分页查询公式:
需求:每页显示size条数据,此时显示第pageNo页;
公式1:LIMIT (pageNo-1)*pageSize;
考虑上WHERE…ORDER BY… 之后LIMIT 声明顺序如下:*
公式2:LIMIT 位置偏移量,条目数
Tips: LIMIT 0, 条目数 "等价于 “LIMIT 条目数” ;
SELECT employee_id, last_name, salary
FROM employees
WHERE salary > 6000
ORDER BY salary desc;
LIMIT 0, 10; //也可写成LIMIT 10; ORDER BY 和LIMIT 一般都是用来垫底的。
小小练习题:
1、查询员工的姓名和部门号和年薪,按年薪降序,按姓名升序显示。(二级排序)
SELECT last_name, department_id, salary * 12 annual_salary//设置别名
FROM employees
ORDER BY annual_salary DESC, last_name AESC;
2、选择工资不在8000 到 17000 的员工的姓名和工资,按工资降序,显示第21 到40位置的数据;
SELECT last_name, salary
FROM employees
WHERE salary NOT between 8000 AND 17000
ORDER BY salary DESC
LIMIT 20, 20;
3、 查询邮箱中包含e的员工信息,并先按邮箱的字节数排序,再按部门号升序。
SELECT employee_id, last_name, email, department_id
FROM emplyees
WHERE email like '%e%';