Команда SELECT с оператором INTO позволяет определить таблицу и добавить в нее данные. Если таблица с такими именем уже существует, команда заканчивается неудачно и генерируется сообщение об ошибке. Новая таблица создается со столбцами, которые указываются в списке выборки. Синтаксис запроса для создания таблиц следующий:
SELECT <Список столбцов>
INTO <Имя новой таблицы>
FROM <Список таблиц>
WHERE <Условие поиска>
При использовании данной команды необходимо учесть следующие факторы:
· новая таблица создается только в том случае, если включена опция базы данных select into/bulkcopy;
· если эта опция не установлена, то можно копировать данные во временную таблицу, имя которой начинается со знака # для локальной временной таблицы или начинается знаками ## для глобальной временной таблицы;
· нельзя использовать при написании имени таблицы кириллицу;
· названия столбцов не должны содержать пробелов;
· нельзя создать таблицу на основе запроса, использующего COMPUTE, или внутри пользовательской транзакции.
В следующем примере создается временная таблица #Table1, в которую записываются фамилии клиентов, проживающих в настоящее время в двухместных номерах:
SELECT Н.Номер, К.Фамилия
INTO #Table1
FROM Клиент К, Проживает П, Номер Н
WHERE К.Код_клиента = П.Код_клиента
AND П.Номер = Н.Номер
AND Н.Число_мест = 2
AND П.Дата_убытия < GETDATE()