oracle啥意思 oracle数据库里in和exits到底有什么区别?
浏览量:2559
时间:2021-03-17 18:31:59
作者:admin
oracle数据库里in和exits到底有什么区别?
表A(小表),表B(大表)select * from B where cc in (select cc from A) 这个语句中是先从A表中把cc找出来,然后根据cc再在B中去找相关的cc 由于A表的cc远小于B表的cc 所以可以节省时间 select * from B exists (select cc from A where cc=B.cc)这句话是先从B表里把cc找出来 然后再在A表里找相关的cc 由于B表的cc远多于A表的cc 所以这样做很浪费时间 总结: 用in 时 大表在前小表在后 用exists时 小表在前大表在后
oracle中in和not in的区别?
Oracle中关于in和exists,not in 和 not exists in和exists in 是把外表和内表作hash 连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询。 not exists:做NL,对子查询先查,有个虚表,有确定值,所以就算子查询有NULL最终也有值
oracle啥意思 oracle的in最多几个 oracle临时表
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。