Конструктор значений таблицы |
|||||||||||||||||||||||
Синтаксис конструктора значений таблицы:
При этом элементом конструктора может быть: - выражение, вычисляющее значение, совместимое с типом данных соответствующего столбца таблицы; - DEFAULT - для подстановки значения по умолчанию для соответствующего столбца таблицы; - NULL; - подзапрос, возвращающий одно значение, совместимое с типом данных соответствующего столбца таблицы. Конструктор значений таблицы может использоваться для вставки набора строк в существующую таблицу с помощью одного оператора INSERT. Создадим следующую таблицу для выполнения примеров:
Вставим в таблицу 4 строки, используя конструктор.
Последнее значение в двух последних строках было получено с помощью подзапроса, который возвращает либо одно значение (поскольку выполняется отбор по ключу) с номером модели из таблицы Printer, либо ни одного. Последнее имеет место для четвертой строки, поскольку коду 77 не отвечает никакая строка таблицы Printer. В этом случае будет записано NULL-значение. Конструктор значений таблицы может использоваться также в предложении FROM. В параграфе, посвященном генерации числовой последовательности, последний пример, который находит 100 последовательных незанятых номеров моделей, с учетом этой возможности можно переписать более компактно:
Еще один пример использования конструктора значений таблицы для трансформации строки в столбец можно увидеть в главе, посвященной оператору CROSS APPLY. |