今天在采访中,我被问到,我是否可以编写单个查询来将数据从3个表复制到空表。
我开始说,我会使用临时表或表变量,但他说不,他想在单个语句或查询中看到....我是空白的:(
请你们中的任何人分享正确答案:)
答案 0 :(得分:2)
insert into <emplty_table>
select * from table1
union all
select * from table2
union all
select * from table3
如果所有表都具有相同的结构
答案 1 :(得分:0)
取决于具体细节,但总的来说,我认为这个想法是使用联盟。以下显然是伪代码,但它传达了这个想法:
insert into x (field1, field2, field3)
select a, b, c
from table1
union
select d, e, f
from table2
union
select g, h, i
from table3