#查询emp表中记录数
SELECT COUNT(*) FROM emp;
#查询emp表中有佣金的人数
SELECT COUNT(comm) FROM emp WHERE comm !=0;
#查询emp表中月薪大于2500的人数
SELECT COUNT(*) FROM emp WHERE sal>2500;
SELECT COUNT(sal) FROM emp WHERE sal>2500;
#统计月薪与佣金之和大于2500元的人数
SELECT COUNT(*) FROM emp WHERE sal+IFNULL(comm,0)>2500;
#查询有佣金的人数,有领导的人数
SELECT COUNT(comm),COUNT(mgr) FROM emp;
#查询所有雇员月薪和
SELECT SUM(sal) FROM emp;
#查询所有雇员月薪和,以及所有雇员佣金和
SELECT SUM(sal),SUM(comm) FROM emp;
#查询所有雇员月薪+佣金和
SELECT SUM(sal)+SUM(comm) FROM emp;
SELECT SUM(sal+IFNULL(comm,0)) FROM emp;
#统计所有员工平均工资
SELECT AVG(sal) FROM emp;
分组查询
HAVING:
having是在分组后对数据进行过滤
where是在分组前对数据进行过滤
having后面可以使用聚合函数(统计函数)
where后面不可以使用聚合函数
#查询每个部门的部门编号和每个部门的工资和
SELECT deptno,SUM(sal) FROM emp GROUP BY deptno;
#查询每个部门的部门编号以及每个部门的人数
SELECT deptno,COUNT(*) FROM emp GROUP BY deptno;
#查询每个部门的部门编号以及每个部门工资大于1500的人数
SELECT deptno,COUNT(*) FROM emp WHERE sal>1500 GROUP BY deptno;
#查询工资总和大于9000的部门编号以及工资和
SELECT deptno,SUM(sal) FROM emp GROUP BY deptno HAVING SUM(sal) >9000;
LIMIT
#查询5行记录,起始行从0开始 开始位置=(当前页数-1)*每页的条数
#第一行
SELECT * FROM emp LIMIT 0,5;
#第二行
SELECT * FROM emp LIMIT 5,10;
#第三行
SELECT * FROM emp LIMIT 10,14;