一、介绍
- 子查询又叫嵌套查询
- 一个查询结果作为另一个的查询的条件
-- 查询emp表中工资最高的员工信息
-- 1、先得到最高的工资是多少
select max(sal) from emp;
-- 2、工资=最高工资的员工
select * from emp where sal=?
-- 3、整合嵌套
select * from emp where sal=(select max(sal) from emp);
二、使用
-
写在where或having后面作为查询条件的值
-
写在from后面作为临时表使用
-- 必须有别名 select name from (select * from t_user where dept_id=1) t;
-
写在创建表的时候
-- 相当于创建一个新表,把查询的结果导入到创建的表中,字段要对应 create table tmp_user as ( select name, sal, dept_id from t_user where dept_id=1 );
-
写在创建视图的语句