Mysql常用sql语句(7)- order by 对查询结果进行排序

前言

  • 通过select出来的结果集是按表中的顺序来排序的,order by允许我们对查询结果针对某个字段进行排序
  • 实际场景:根据数据的创建时间、更新时间、文件大小、商品价格等字段来排序

order by的语法格式

ORDER BY <字段名> [,<字段名>...] [ASC | DESC]
  • ASC:升序排序,默认值
  • DESC:降序排序

注意点

  • order by关键字后可以跟子查询(后面展开讲)
  • 如果字段值是NULL,则当最小值处理
  • 如果指定多个字段排序,则按照字段的顺序从左往右依次排序

确认表里的数据,方便后面的栗子做对比

单字段排序的栗子

根据id倒序排序

select * from yyTest order by id desc;

多字段排序的栗子

先根据sex倒序排序,然后根据height升序排序

select * from yyTest order by sex desc, height asc;

知识点

  • 对多个字段排序时,只有第一个排序字段有相同的值,才会对第二个字段进行排序,以此类推
  • 如果第一个排序字段的所有数据都是唯一的,将不会对第二个排序字段进行排序,以此类推
  • 按字母(A-Z进行排序,大小写不敏感)