Получил сложный запрос SELECT, из которого я хотел бы вставить все строки в табличную переменную, но T-SQL не позволяет этого.
Кроме того, нельзя использовать табличную переменную с запросами SELECT INTO или INSERT EXEC. http://odetocode.com/Articles/365.aspx
Краткий пример:
declare @userData TABLE(
name varchar(30) NOT NULL,
oldlocation varchar(30) NOT NULL
)
SELECT name, location
INTO @userData
FROM myTable
INNER JOIN otherTable ON ...
WHERE age > 30
Данные в табличной переменной позже будут использоваться для вставки / обновления их в разные таблицы (в основном это копирование тех же данных с незначительными обновлениями). Цель этого состоит в том, чтобы сделать скрипт немного более читабельным и более легко настраиваемым, чем SELECT INTO
непосредственно в правильные таблицы. Производительность не является проблемой, так как rowcount
она довольно мала и запускается только вручную, когда это необходимо.
... или просто скажи мне, если я все делаю неправильно.