美文网首页
关联子查询与非关联子查询的区别

关联子查询与非关联子查询的区别

作者: 42c64edf12e9 | 来源:发表于2019-08-07 20:13 被阅读0次

sql的编写顺序

    select .. from .. where .. group by ..having .. order by ..

sql的执行顺序

    from .. where .. group by .. having .. select .. order by ..

关联子查询 :

在关联子查询中,对于外部查询返回的每一行数据,内部查询都要执行一次。另外,在关联子查询中是信息流是双向的。外部查询的每行数据传递一个值给子查询,然后子查询为每一行数据执行一次并返回它的记录。然后,外部查询根据返回的记录做出决策。

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. 再执行外层查询

相关文章

  • 关联子查询与非关联子查询的区别

    sql的编写顺序 select .. from .. where .. group by ..having ....

  • 06 子查询

    目录链接:https://www.jianshu.com/p/2c104aaadb03 关联子查询与非关联子查询 ...

  • 数据库笔记-SQL子查询

    子查询:关联查询和非关联查询 子查询是「查询」中的「查询」,就是「嵌套查询」。 以 NBA 的SQL数据库文件为例...

  • 关联子查询和非关联子查询

    对于exist和in,大家的一致看法如下:1.in是子查询为驱动表,外面的表为被驱动表,故适用于子查询结果集小而外...

  • MySQL

    1、mysql in和exists区别 in是先进行子查询,然后将内表(子查询)与外表(主查询)进行hash关联(...

  • 速度问题

    sql里的关联子查询和交叉联接都是比较浪费时间的。 非关联子查询(Noncorrelated subquery) ...

  • SQL必知必会(子查询)

    一、什么是关联子查询,什么是非关联子查询 子查询虽然是一种嵌套查询的形式,不过我们依然可以依据子查询是否执行多次,...

  • 一文详解 SQL 关联子查询

    本文主要介绍什么是关联子查询以及如何将关联子查询改写为普通语义的sql查询。 在背景介绍中我们将讲讲常见的关联子查...

  • SQL关联子查询

    简单易懂教你学会SQL关联子查询 初学SQL的人都会觉得SQL的关联子查询难以理解,为什么?这是有原因的。 关联子...

  • 关联子查询

    关联子查询会在细分的组内进行比较时使用。关联子查询和GROUP BY子句一样,也可以对表中的数据进行切分。关联子查...

网友评论

      本文标题:关联子查询与非关联子查询的区别

      本文链接:https://www.haomeiwen.com/subject/mvnadctx.html