SQL查阅笔记——多表查询2

-- 查询工资高于猪八戒的员工信息

select * from emp;

-- 1. 查询猪八戒的工资
select salary from emp where name = '猪八戒';

-- 2. 查询工资高于猪八戒的员工信息
select * from emp where salary > 3600;

select * from emp where salary > (select salary from emp where name = '猪八戒');

 

子查询根据查询结果不同,作用不同。
 
1.单行单列:作为条件之,使用 = !><等进行条件判断 
 
    select 字段列表 from 表 where 字段名 =(子查询);
2.多行单列:作为条件值,使用in等关键字进行条件判断
 
select 字段列表 from 表 where 字段名 in(子查询);
3.多行多列 作为虚拟表
select 字段列表 from (子查询) where 条件;

-- 查询 '财务部' 和 '市场部' 所有的员工信息
-- 查询 '财务部' 所有的员工信息

select did from dept where dname = '财务部' or dname = '市场部';

select * from emp where dep_id in (select did from dept where dname = '财务部' or dname = '市场部');

-- 查询入职日期是 '2011-11-11' 之后的员工信息和部门信息
-- 查询入职日期是 '2011-11-11' 之后的员工信息

select * from emp where join_date > '2011-11-11' ;


select * from (select * from emp where join_date > '2011-11-11' ) t1, dept where t1.dep_id = dept.did;
 
posted @ 2022-04-17 14:33  踏上星辰  阅读(38)  评论(0编辑  收藏  举报