1

今天面试,有人问我是否可以编写一个查询来将数据从 3 个表复制到一个空表。

我开始说,我将使用临时表或表变量,但他说不,他想在单个语句或查询中查看....我是空白 :(

请问你们中的任何人都可以分享正确的答案吗:)

4

2 回答 2

2
insert into <emplty_table>
select * from table1
union all
select * from table2
union all
select * from table3

前提是所有表都具有相同的结构

于 2012-07-19T11:13:23.737 回答
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
于 2012-07-19T11:15:11.310 回答