Это не ключевое слово.Это псевдоним.Вместо «UN» можно было использовать любую строку.
В более полной форме это:
SELECT x INTO ##temp
FROM (SELECT x FROM y UNION ALL SELECT x FROM z) AS UN
@ Tomalak является правильным.В этом случае псевдоним обязателен.Без псевдонима ошибка:
Сообщение 102, уровень 15, состояние 1, строка 2 Неверный синтаксис рядом с ')'.
Я немного упростил запроси использовал базу данных AdventureWorks:
SELECT * INTO ##temp
FROM (SELECT * FROM Person.Address)
, здесь появляется ошибка, указанная выше.Для сравнения:
SELECT * INTO ##temp
FROM Person.Address
работает просто отлично.Альтернатива
;WITH UN AS
(
SELECT * FROM Person.Address
)
SELECT * INTO ##temp
FROM UN