使用之前创建的department跟employee表
Mysql数据库常用语句——创建数据库/表_yopky的博客-CSDN博客
Mysql数据库常用语句——插入/更改/删除数据_yopky的博客-CSDN博客
排序order by
对employee表中的年龄进行升序排序asc,从小到大
-- ORDER BY 单列排序
-- 对employee表中的年龄进行升序排序asc可不写,从小到大
SELECT * FROM employee ORDER BY age
SELECT * FROM employee ORDER BY age asc
进行倒序排序
对年龄进行降序排序desc,从大到小
-- 进行倒序排序
-- 对年龄进行降序排序
SELECT * FROM employee ORDER BY age desc
组合排序
对年龄跟dept_id进行降序排序
-- 组合排序
-- 对年龄跟dept_id进行降序排序
SELECT * FROM employee ORDER BY age DESC,dept_id DESC
聚合函数count/sum/max/min/avg
-- 查询员工总数
SELECT COUNT(ename) FROM employee
-- 统计去除重复名字的员工总数
SELECT COUNT(DISTINCT ename) FROM employee
-- 查询员工年龄总和,最大年龄,最小年龄,年龄平均数
-- 带有null的不进行统计
SELECT SUM(age),MAX(age),MIN(age),AVG(age) FROM employee
-- 查询年龄大于30的员工个数
SELECT count(ename) FROM employee WHERE age>30
-- 查询年龄dept_id为4的平均年龄
SELECT AVG(age) FROM employee WHERE dept_id =4
分组group by
where进行分组前过滤,后面不能跟聚合函数
having分组后进行过滤,后面可以写聚合函数(count,sum,max,min,avg)
分组
-- where进行分组前过滤,后面不能跟聚合函数
-- having分组后进行过滤,后面可以写聚合函数(count,sum,max,min,avg)
-- 使用employee表根据每个dept_id查询平均年龄
SELECT dept_id,AVG(age) FROM employee GROUP BY dept_id
-- 根据每个dept_id查询平均年龄,且age不为空
SELECT dept_id,AVG(age) FROM employee WHERE age is not NULL GROUP BY dept_id
-- 查询平均大于35的信息
SELECT dept_id,AVG(age) FROM employee WHERE age IS NOT NULL GROUP BY dept_id HAVING AVG(age)>=37
LIMIT分页查询
-- 查询employee中前3条数据
-- LIMIT 参数1,参数2;参数1:起始值,默认为0,参数2:查询条数
SELECT * FROM employee LIMIT 3
SELECT * FROM employee LIMIT 0,3
-- 分页查询,每页显示3条数据
SELECT * FROM employee LIMIT 0,3;
SELECT * FROM employee LIMIT 3,3;
SELECT * FROM employee LIMIT 6,3;