您好,登录后才能下订单哦!
本篇内容主要讲解“数据库中关联子查询和非关联子查询有什么区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“数据库中关联子查询和非关联子查询有什么区别”吧!
子查询可区分为关联子查询和非关联子查询,他们和外层查询之间的执行顺序和关系是不同的。
关联子查询:
在关联子查询中,对于外部查询返回的每一行数据,内部查询都要执行一次。另外,关联子查询的信息流是双向的,外部查询的每行数据传递一个值给子查询,然后子查询为每一行数据执行一次并返回它的记录,之后外部查询根据返回的记录做出决策。
select * from dept d where exists(select * from emp e where e.deptno = d.deptno);
特点:
1、先执行外层查询
2、再执行内层查询
非关联子查询:
非相关子查询是独立于外部查询的子查询,子查询执行完毕后将值传递给外部查询。
select * from emp where sal = (select max(sal) from emp);
特点:
1、先执行内层查询
2、再执行外层查询
到此,相信大家对“数据库中关联子查询和非关联子查询有什么区别”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。