一、什么是子查询?
一条SQL语句含有多个select
举例:
1、查询所有比“CLARK”工资高的员工的信息
select * from emp where sal>(select sal from emp where ename='CLARK')
2、查询工资高于平均工资的雇员名字和工资。
select ename,sal from emp where sal>(select avg(sal) from emp)
3、查询职务和SCOTT相同,比SCOTT雇佣时间早的雇员信息
select *
from emp
where job=(select job from emp where ename='SCOTT')
and HIREDATE<(select HIREDATE from emp where ename='SCOTT')
二、执行顺序
先执行子查询,再执行外查询;
三、不相关子查询:
子查询可以独立运行,称为不相关子查询。
四、不相关子查询分类:
根据子查询的结果行数,可以分为单行子查询和多行子查询。