排序与分页
2026/6/7 15:51:15 网站建设 项目流程

文章目录

  • 1.排序
    • 1.1 基本使用
    • 1.2 我们可以使用列的别名,进行排序
    • 1.3 强调格式:WHERE 需要声明在FROM后,ORDER BY之前。
    • 1.4 二级排序
  • 2. 分页
    • 2.1 mysql使用limit实现数据的分页显示
    • 2.2 WHERE ... ORDER BY ...LIMIT 声明顺序如下:
    • 2.3 MySQL8.0新特性:LIMIT ... OFFSET ...

1.排序

1.1 基本使用

  • 使用 ORDER BY 对查询到的数据进行排序操作。
    1. 升序:ASC (ascend)
    2. 降序:DESC (descend)
# 练习:按照salary从高到低的顺序显示员工信息SELECTemployee_id,last_name,salaryFROMemployeesORDERBYsalaryDESC;
# 练习:按照salary从低到高的顺序显示员工信息SELECTemployee_id,last_name,salaryFROMemployeesORDERBYsalaryASC;

1.2 我们可以使用列的别名,进行排序

SELECTemployee_id,salary,salary*12annual_salFROMemployeesORDERBYannual_sal;
1. 列的别名只能在 ORDER BY 中使用,不能在WHERE中使用。

1.3 强调格式:WHERE 需要声明在FROM后,ORDER BY之前。

SELECTemployee_id,salaryFROMemployeesWHEREdepartment_idIN(50,60,70)ORDERBYdepartment_idDESC;

1.4 二级排序

#练习:显示员工信息,按照department_id的降序排列,salary的升序排列SELECTemployee_id,salary,department_idFROMemployeesORDERBYdepartment_idDESC,salaryASC;

2. 分页

2.1 mysql使用limit实现数据的分页显示

# 需求1:每页显示20条记录,此时显示第1页SELECTemployee_id,last_nameFROMemployeesLIMIT0,20;# 需求2:每页显示20条记录,此时显示第2页SELECTemployee_id,last_nameFROMemployeesLIMIT20,20;# 需求3:每页显示20条记录,此时显示第3页SELECTemployee_id,last_nameFROMemployeesLIMIT40,20;

2.2 WHERE … ORDER BY …LIMIT 声明顺序如下:

# LIMIT的格式: 严格来说:LIMIT 位置偏移量,条目数# 结构"LIMIT 0,条目数" 等价于 "LIMIT 条目数"SELECTemployee_id,last_name,salaryFROMemployeesWHEREsalary>6000ORDERBYsalaryDESC#limit 0,10;LIMIT10;

2.3 MySQL8.0新特性:LIMIT … OFFSET …

#练习:表里有107条数据,我们只想要显示第 32、33 条数据怎么办呢?SELECTemployee_id,last_nameFROMemployeesLIMIT2OFFSET31;

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询