子查询
- 子查询是什么
一个查询语句中包含另一个查询语句(A包含B).我们就说B是A的子查询.
- 什么时候会用子查询
子查询多用于查询条件.
对于表A的查询所需条件条件要使用到另一张表B时,多使用子查询。
-
例如:
查询在“NEW YORK”工作的员工信息.- 显示信息----员工表 select * from emp where deptno =
- 查询条件----部门表 select deptno from dept where loc = ‘NEW YORK’
select * from emp
where deptno = (select deptno from dept where loc = ’ NEW YORK ');
小心子查询((select deptno from dept where loc = ’ NEW YORK '))有可以查询结果为多条件记录。
在使用子查询时,使用in比较多。
select * from emp
where deptno in (select deptno from dept where loc = ‘DALLAS’);*
- 用于子查询条件的运算符
where 列名>all(子查询); 大于所有。大于max
where 列名<all(子查询); 小于所有。小于min
where 列名>any(子查询); 大小任意一个。大于min
where 列名<any(子查询); 小于任意一个。小于max
where 列名 in (子查询)- exists(子查询) 是否存在
where exists(子查询) 子查询有结果返回true,子查询没结果就返回false;