组合查询

本文详细介绍了SQL中的集合操作包括UNION、UNION ALL、INTERSECT及EXCEPT的使用方法及区别。UNION用于合并多个SELECT语句的结果集并去除重复记录;UNION ALL则保留所有记录包括重复项;INTERSECT返回两个SELECT语句结果集的交集部分;EXCEPT则返回第一个SELECT结果集中不在第二个SELECT结果集中的记录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

union 查询语法:

SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
union all查询语法:
SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2
union与union all的区别:
1.union可以组合多个SELECT,而union all只能组合两个SELECT
2.union查询不包含重复记录,union all可以包含重复结果

INTERSECT的语法:

SELECT COLUMN1 [,COLUMN2]
FROM TABLE1 [,TABLE2]
[WHERE]
INTERSECT
SELECT COLUMN1 [,COLUMN2]
FROM TABLE1 [,TABLE2]
[WHERE]

INTERSECT查询相当于两个组合的交集,即R1∩R2。返回第一个SELECT与第二个SELECT语句里的一样的记录

EXCEPT的查询语法:

SELECT COLUMN1 [,COLUMN2]
FROM TABLE1 [,TABLE2]
[WHERE]
EXCEPT
SELECT COLUMN1 [,COLUMN2]
FROM TABLE1 [,TABLE2]
[WHERE]
EXCEPT查询相当于两个组合的差集A-B。返回返回第一个SELECT有与第二个SELECT语句里没有的记录





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值