一、单表查询练习
1、查询出部门编号为30的所有员工
2、所有销售员的姓名、编号和部门编号。
3、找出奖金高于工资的员工。
4、找出奖金高于工资60%的员工。
5、找出部门编号为10中所有经理,和部门编号为20中所有销售员的详细资料。
6、找出部门编号为10中所有经理,部门编号为20中所有销售员,还有即不是经理又不是销售员但其工资大或等于20000的所有员工详细资料。
7、无奖金或奖金低于1000的员工。
8、查询名字由三个字组成的员工。
– 注意:一个汉字占三个字节
9、查询2000年入职的员工。
10、查询所有员工详细信息,用编号升序排序
11、 查询所有员工详细信息,用工资降序排序,如果工资相同使用入职日期升序排序
12、查询每个部门的平均工资
13、查询每个部门的雇员数量
14、查询每种工作的最高工资、最低工资、人数
二、多表连接查询
1、查询每个部门的所属员工
隐式内连接
mysql> select * from dept3,emp3 where deptno=dept_id;
2、查询研发部门的所属员工
mysql> select * from dept3 a,emp3 b where a.deptno=b.dept_id and name='研发部';
3、查询研发部和销售部的所属员工
mysql> select * from dept3 a,emp3 b where a.deptno=b.dept_id and name in('研发部','销售部');
4、查询每个部门的员工数,并升序排序
mysql> select a.deptno,count(1) from dept3 a join emp3 b on a.deptno=b.dept_id group by a.deptno;
5、查询人数大于等于3的部门,并按照人数降序排序
mysql> select a.deptno,a.name,count(1) as total_cnt from dept3 a join emp3 b on a.deptno=dept_id group by a.deptno,a.name having total_cnt >= 3 order by total_cnt desc;