从两个表中获取数据

时间:2013-08-06 09:21:44

标签: c# asp.net sql sql-server tsql

我正在使用sql server 2008.我想做这样的事情。 我有两张这样的桌子。

Table1

Id
1
2
3
4

Table2

Id
2
3
5
6

Output

1
2
3
4
5
6

4 个答案:

答案 0 :(得分:7)

如何使用UNION

  

将两个或多个查询的结果合并到一个结果集中   包括属于union中所有查询的所有行。   UNION操作与使用组合列的连接不同   来自两张桌子。

     

UNION ALL

     

将所有行合并到结果中。这包括重复。如果   未指定,删除重复的行。

SELECT Id
FROM Table1
UNION
SELECT Id
FROM Table2

看看下面的演示,它还会向您展示UNIONUNION ALL

之间的区别

SQL Fiddle DEMO

答案 1 :(得分:2)

我认为您正在寻找UNION (Transact-SQL)

  

将两个或多个查询的结果合并到一个结果集中   包括属于union中所有查询的所有行。   UNION操作与使用组合列的连接不同   来自两张桌子。

SELECT Id
FROM Table1

UNION

SELECT Id
FROM Table2

只需提示UNION即可删除所有重复记录,UNION ALL则不会。

这是DEMO

| ID |
------
|  1 |
|  2 |
|  3 |
|  4 |
|  5 |
|  6 |

答案 2 :(得分:2)

如果您有超过1列

,也可以使用此选项
SELECT coalesce(t1.ID, t2.ID) [Output]
FROM TABLE1 t1
FULL JOIN
TABLE2 t2 ON
t1.id = t2.id
ORDER BY [Output]

答案 3 :(得分:0)

您可以使用union实现它,请参阅以下链接

http://www.w3schools.com/sql/sql_union.asp