Выберите в использование Union Query
-
26-09-2019 - |
Вопрос
Я хочу создать новую таблицу в SQL Server со следующим запросом. Я не могу понять, почему этот запрос не работает.
Query1: работает
SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2
Query2: не работает. Ошибка: Msg 170, Level 15, State 1, Line 7
Line 7: Incorrect syntax near ')'.
SELECT * INTO [NEW_TABLE]
FROM
(
SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2
)
Спасибо!
Решение
Вы должны определить псевдоним таблицы для производной таблицы в SQL Server:
SELECT x.*
INTO [NEW_TABLE]
FROM (SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2) x
«X» - это псевдоним таблицы в этом примере.
Другие советы
INSERT INTO #Temp1
SELECT val1, val2
FROM TABLE1
UNION
SELECT val1, val2
FROM TABLE2
Вы также можете попробовать:
create table new_table as
select * from table1
union
select * from table2
select *
into new_table
from table_A
UNION
Select *
From table_B
Это только работает, если Tate_a и table_b имеют те же схемы
Не связан с StackOverflow