开发者学堂课程【MySQL 实操课程:MySQL 之 Select 应用实战】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/717/detail/12806
MySQL 之 Select 应用实战
目录
一、条件查询
二、排序
三、多条件排序
四、分组统计
五、分组统计+条件过滤
六、聚合函数与多表关联查询
一、条件查询
1.查询部门编号 detno=1
输入 select * from emp where detno=1; 查询到了编号=1的数据
2.查询部门编号 detno=1且 sal>2000(并、和条件)
输入 select * from emp where detno=1 and sal>2000;
3.查询部门编号 detno=1 且 sal=8000(或者条件)
输入 select * from emp where detno=1 or sal=8000;不仅把 detno=1查询到,而且将 sal=8000查询到了。
二、排序
1.sal 的升序排列
输入 select * from emp where detno=1 order by sal;
2.sal 的降序排列
输入 select * from emp where detno=1 order by sal desc;
三、多条件排序
1.detno 为升序排列,sal 为降序排列
输入 select * from emp order by deptno,sal desc;detno
按升序排列完成之后,在按照 sal 降序排列
2.只显示前2条的数据
输入 select * from emp order by deptno,sal desc LIMIT 2;
就只显示前2条的数据,但是从0开始的
从1开始
输入 select * from emp order by deptno,sal desc LIMIT 1,2;
从第一条开始并且延续显示两条。先执行排序再执行显示。
四、分组统计
1.统计总人数
输入 select count(1) from emp;
总共有3个员工
2.统计各个部门的人数
输入 select deptno,count(1)as empnum from emp group by deptno;
五、分组统计+条件过滤
1.既要统计各部门人数,又要统计总人数
输入 select deptno,count(1) as empnum from emp group by deptno with ROLLUP;
会在原来的基础上增加一个 ROLLUP,ROLLUP 是统计总和(分组之后的总和)。
2.统计部门人数大于1
输入 select deptno,count(1) as empnum from emp group by deptno HAVING count(1)>1;
六、聚合函数与多表关联查询
1.查询雇员的名字和所在部门的名称
输入 select ename,deptname from emp,dept where emp.deptno=dept.deptno;
2.查询雇员的名字和所在部门的名称 (join)
输入 select ename,deptname from emp join dept on emp.deptno=dept.deptno;
3.查询所有员工工作总额、最高和最低工资
输入 select sum(sal),max(sal),min(sal)from emp;