2010-07-26 132 views
6

我有两个表,说表1有两行数据说row11和row12 和表2与3行数据坐在row21,row22,row23SQL追加表查询

任何人都可以向我提供的SQL创建一个查询返回

row11 
row12 
row21 
row22 
row23 

注意:我不想创建一个新表只是返回数据。

+0

您的行在结构上是否相同? (即相同数量的列,具有相同的类型和顺序?) – 2011-09-20 09:24:38

回答

7
select * from table1 union select * from table2 
+0

非常感谢 - 非常感谢 – Dave 2010-07-26 02:53:14

1

为什么不使用UNION?

选择 Col1中,col2的,COL3 FROM TABLE1

UNION

选择 Col1中,col2的,COL3 FROM TABLE2

都在两个表相同的列?

13

使用UNION ALL,基于示例数据:

SELECT * FROM TABLE1 
UNION ALL 
SELECT * FROM TABLE2 

UNION删除重复 - 如果每两个表有一个排,其值分别为“一列x,1”,查询将返回一行,而不是两个。这也使UNION慢于UNION ALL,因为UNION ALL不会删除重复项。了解你的数据,并适当使用。