SQLSERVER 集合处理——UNION

        我们之前介绍了求两个表差集 和 两个表交集 的方法,今天我们在介绍一种求两个表合集的方法,测试数据:

if not object_id(N'Tempdb..#T1') is null
	drop table #T1
Go
Create table #T1([Id] int,[Name] nvarchar(22))
Insert #T1
select 1,N'张三' union all
select 2,N'李四'
GO
if not object_id(N'Tempdb..#T2') is null
	drop table #T2
Go
Create table #T2([Id] int,[Name] nvarchar(22))
Insert #T2
select 1,N'张三' union all
select 2,N'王五'
Go

        这时候我们想得到两个表的合集,可以使用UNION方法,具体如下:

SELECT * FROM #T1
UNION
SELECT * FROM #T2

        结果如下:

        我们从上边的结果可以看到,得到了两个表的合集,而且合集是自动去重了,把张三去掉了,如果不想去重,可以使用 UNION ALL,得到不去重的合集:

SELECT * FROM #T1
UNION ALL
SELECT * FROM #T2

         结果如下:

猜你喜欢

转载自blog.csdn.net/sinat_28984567/article/details/123604191