postgresql集合运算UNION&&INTERSECT&&EXCEPT


一.UNION

两个查询使用UNION的结果使用图片表示如下:

 

UNION默认会去重,即重复数据只会返回一行,如果需要保留重复数据所有行可以使用UNION ALL。

 

二.INTERSECT

两个查询使用INTERSECT求交集的结果使用图片表示如下:

 

三.EXCEPT

两个查询使用EXCEPT(A EXCEPT B)求差集的结果:

使用方法:

多个SELECT语句可以使用UNION,INTERSECT和EXCEPT进行集合处理,其中UNION用于求并集,INTERSECT用于求交集,EXCEPT用于求差集。用法如下

query1 UNION query2 

query1 INTERSECT query2

query1 EXCEPT query2

 

其中query1和query2的SELECT子句中字段个数必须相同,且对应的数据类型必须相同(如果int和bigint结果取bigint,varchar(5)和varchar(10)结果取varchar(10)),字段名可以不同,但是最终结果会以第一个SELECT子句中字段名称返回。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM