2016-04-29 70 views
3

我很难找到解决此问题的方法,因为搜索合并SQL列或从表中添加列可以提供我不想要的各种结果。用一个例子来说明我容易得多。在SQL中合并来自相同表格的列

我有两个表:

表1

ColA ColB ColC 
0  A  AL 
1  B  DZ 

表2

ColA ColB ColC 
2  C  IS 
3  D  KA 

我想这样的类似的列基本上是组合以合并这些表中,那么我有一个具有相同结构和所有值的新表。因此,输出将是:

输出

ColA ColB ColC 
0  A  AL 
1  B  DZ 
2  C  IS 
3  D  KA 

的问题是,我想找到两个类似结构的表在这些列中的不同的值,所以我不能看我怎么可以使用加入了这一点,就好像我加入任何一个值一样,其他值将会丢失,并且多字段连接似乎不起作用。

回答

7

如果你想保留重复的行,你可以使用UNION ALL,如果你想从结果集,你可以在下面使用UNION去除重复行:

SELECT ColA, ColB, ColC 
FROM Table1 

UNION ALL 

SELECT ColA, ColB, ColC 
FROM Table2 

注意UNION ALL工作速度比UNION

+1

十分感谢。我会尽快将其标记出来 – dahui

1
select ColA, ColB, ColC from table1 
union 
select ColA, ColB, ColC from table2 
1

union运算符允许您将一个查询的结果放在另一个之后,而elimina TES重复:

SELECT cola, colb, colc 
FROM table1 
UNION 
SELECT cola, colb, colc 
FROM table2 
1
select ColA, ColB, ColC from table1 
union 
select ColA, ColB, ColC from table2 

您还可以使用UNION ALL

相关问题