欢迎大家来到IT世界,在知识的湖畔探索吧!
Minus:返回的T1-T2是差集。
–两张表所选字段的内容进行比较,返回(表1-表2)的差,表中数据量较大使用并行方式/*+parallel(8)*/
select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from 表1 minus select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from 表2
欢迎大家来到IT世界,在知识的湖畔探索吧!
—上下表的顺序改变结果是不同的 ,返回(表2-表1)的差,
欢迎大家来到IT世界,在知识的湖畔探索吧!select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from 表2 minus select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from 表1
intersect 获取两张表相同的部分
–两张表所选字段的交集,就是获取两张表相同的部分
select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from ydetl.表2 intersect select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from east.表1
exists 存在于
exists比较难理解,看了很多解释,还是回归本源,作为使用者只要知道怎么用能够达到你的目的就够了。
1,两张表比较,必须带where条件进行两张表关联,不然结果不同。结果集是:LSH字段相同的情况下,表1 存在于表2 中的数据。
exists引导的子句有结果集返回true和false,select 1 这个1这个数字没有意义,是字段名也可以,是什么都可以,这个记住就行了。
欢迎大家来到IT世界,在知识的湖畔探索吧!select /*+parallel(8)*/ lsh, bxjgdm, bxjgmc, khbh from 表1 where exists(select 1 from 表2 where 表1.lsh=表2.lsh and ……)
not exists 不存在于
两张表比较,需带where条件。结果集是:lsh和khbh字段相同的情况下,表1 不存在于表2 中的数据。
select /*+parallel(8)*/ lsh, bxjgdm, bxjgmc, khbh from 表1 where not exists(select 1 from 表2 where 表1.lsh=表2.lsh and 表1.khbh=表2.khbh ……)
union all 两张表数据合集,字段数量要一致
union 两张表去重后的合集,字段数量要一致
总结:可以联合使用需要加()
欢迎大家来到IT世界,在知识的湖畔探索吧!(select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from ydetl.表2 intersect select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from east.表1 ) minus (select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from ydetl.表3 union select /*+parallel(8)*/ LSH, BXJGDM, BXJGMC, KHBH from east.表4)
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/87981.html