使用联合在SQL Server中创建表

时间:2018-12-12 04:51:14

标签: sql sql-server tsql

在mysql中,查询写为

create table new_table as (select a.* from Table1 a union select b.* from Table2 b)

此语法在SQL Server中不起作用-如何在SQL Server中通过联合创建表?

3 个答案:

答案 0 :(得分:3)

SQL Server中,您可以使用SELECT .. INTO

 select a.* 
 into   new_table
 from   Table1 a 

 union 

 select b.* 
 from   Table2 b

答案 1 :(得分:2)

以下查询应执行您想要的操作:

select * into new_table
from (
select * from Table1 union select * from Table2 ) a

答案 2 :(得分:1)

您需要编写如下所示的查询,以便使用union子句在sql server中创建表。

create table #table1 (Id int, EmpName varchar(50))
insert into #table1 values (1, 'Suraj Kumar')

create table #table2 (Id int, EmpName varchar(50))
insert into #table2 values (2, 'Davinder Kumar')

SELECT * INTO #NewTable FROM 
(SELECT Id, EmpName FROM #table1
UNION
SELECT Id, EmpName FROM #table2
)a

SELECT * FROM #NewTable

这里是新表的名称-#NewTable是通过将两个表#table1和#table2合并而创建的