
第05章 排序与分页
创作日期:2021-11-20
1.排序数据
1.1 排序规则
1.2 单列排序
ASC (ascend):升序
SELECT first_name,salary FROM employees ORDER BY salary ASC; 

(descend):降序
SELECT first_name,salary FROM employees ORDER BY salary DESC; 

1.3 多列排序
二级排序
SELECT first_name,salary,department_id 
FROM employees ORDER BY department_id ASC,salary ASC; 

2.分页
2.1 背景
2.2 实现规则
SELECT employee_id,first_name,salary FROM employees LIMIT 0,10; 

SELECT employee_id,first_name,salary FROM employees LIMIT 10,10; 

2.3 扩展
SELECT TOP 5 name,hp_max FROM heros ORDER BY hp_max DESC 
 
 
SELECT name,hp_max FROM heros ORDER BY hp_max DESC FETCH FIRST 5 ROWS ONLY
 
 
SELECT rownum,last_name,salary FROM employees WHERE rownum < 5 ORDER BY salary DESC 
 
 
SELECT rownum,last_name,salary
FROM(
    SELECT last_name,salary
    FROM employees
    ORDER BY salary DESC)
WHERE rownum < 10; 
 
 
3.排序与分页练习

SELECT first_name,department_id,salary * 12 salary_year 
FROM employees ORDER BY salary_year DESC,first_name ASC; 

SELECT first_name,salary FROM employees 
WHERE salary NOT BETWEEN 8000 AND 17000 
ORDER BY salary DESC 
LIMIT 20,20; 
 
SELECT * FROM employees 
WHERE email LIKE '%e%'
ORDER BY LENGTH(email) DESC,department_id ASC; 
上一节:
下一节:









