我想在SQL Server中创建一个新表下面的查询。我无法理解,为什么这个查询不起作用。

查询1:工程

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

此仅工作,如果表-A表-B和具有相同的模式

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top