SQL内外层嵌套子查询

先逐行扫描外部查询的每一行,让每一行与内部查询的表进行对比,满足内部查询where条件的返回真,不满足的返回假。

提醒:单独执行内部查询时会报错。

首先执行一次外部查询

对应外部查询的每一行分别执行一次子查询,而且每次执行子查询时都会引用外部查询中当前行的值。

使用子查询的结果来确定外部查询的结果集。

例:

不同职工经手订单金额最大的订单信息

select a.* from 订购单 a where 金额 = (select max(金额) from 订购单 where 职工号=a.职工号)

不同仓库的最大工资对应的职工信息

select a.* from 职工 a where 工资 = (select max(工资) from 职工 where 仓库号 = a.仓库号)

posted @ 2016-06-21 22:57  风行#xyz#  阅读(603)  评论(0编辑  收藏  举报