MySQL基础-排序查询(上)

144 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第11天,点击查看活动详情

排序查询

  • 排序在日常开发中是非常常见的一个操作,有升序排序,也有降序排序。

语法

SELECT 字段列表 FROM 表名 ORDER BY 字段1 排序方式1 , 字段2 排序方式2 ;

排序方式

特点

  • asc表示升序,desc表示降序。如果不写,默认升序。
  • order by子句中可以支持单个字段、多个字段、表达式、函数、别名
  • order by子句一般是放在查询语句最后面,limit子句除外
  • ASC : 升序(默认值)
  • DESC: 降序

注意事项:

  • 如果是升序, 可以不指定排序方式ASC ;
  • 如果是多字段排序,当第一个字段值相同时,才会根据第二个字段进行排序 ;

案例:

根据年龄对公司的员工进行升序排序(2种方式)

  • select * from emp order by age asc;
  • select * from emp order by age; QQ截图20221010102820.png

根据入职时间, 对员工进行降序排序

  • select * from emp order by entrydate desc; QQ截图20221010102812.png

根据年龄对公司的员工进行升序排序 , 年龄相同 , 再按照入职时间进行降序排序

  • select * from emp order by age asc , entrydate desc; QQ截图20221010110702.png

分页查询

  • 分页操作在业务系统开发时,也是非常常见的一个功能,我们在网站中看到的各种各样的分页条,后台都需要借助于数据库的分页操作。

语法

  • SELECT 字段列表 FROM 表名 LIMIT 起始索引, 查询记录数 ;

注意事项:

  • 起始索引从0开始,起始索引 = (查询页码 - 1)* 每页显示记录数。
  • 分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中是LIMIT。
  • 如果查询的是第一页数据,起始索引可以省略,直接简写为 limit 10。