先看我的emp表结构
emp表
子查询基本语法
select * from t1 where column1 = (select column1 from t2);
例子1:查询"销售部" 的所有员工信息
这个可以先拆解为两个
a.查询"销售部"的部门ID
select id from dept where name = '销售部';
b. 根据销售部部门ID, 查询员工信息
select * from emp where dept_id = '4';
合起来就是,后面括号里面被称为子查询
select * from emp where dept_id = (select id from dept where name = '销售部');
2.查询在"方东白" 入职之后的员工信息
a.查询"方东白" 的入职日期
select entrydate from emp where name = '方东白';
b.查询指定入职日期之后入职的员工信息
select * from emp where entrydate > '2009-10-12'
合起来就是,也就是把后面的2009-10-12给替换掉
select * from emp where entrydate > (select entrydate from emp where name = '方东白');
附两张黑马程序员的听课记录截图