在sql中,desc是降序排列。
而升序排列是使用asc,同时sql默认的排序也是升序排列。desc在sql中的用法是对查询出的结果按某一列来降序排序,在使用的时候,要和order by 一起使用。
用法举例:
以Access数据库为例,现有一张学生信息表Student,含有name(姓名),age(年龄),gender(性别),grade(班级),score(成绩)这几个字段。
name age gender grade score
李四 19 男 高三6班 62
马六 20 男 高三4班 77
王五 18 女 高三1班 93
小明 19 男 高三2班 53
张三 18 男 高三2班 88
select * from Student order by age//按年龄升序查询所有学生 查询结果如下:
name age gender grade score
王五 18 女 高三1班 93
张三 18 男 高三2班 88
小明 19 男 高三2班 53
李四 19 男 高三6班 62
马六 20 男 高三4班 77
可以看出查询结果的学生按年龄升序进行了排列。
select * from Student order by score desc//按成绩降序查询所有学生 查询结果如下:
name age gender grade score
王五 18 女 高三1班 93
张三 18 男 高三2班 88
小明 19 男 高三2班 53
李四 19 男 高三6班 62
马六 20 男 高三4班 77
在使用desc也可以通过 , 来隔开多个排序条件:
select * from Student order by age desc,score desc//先根据年龄排序,其次通过分数排序 查询结果如下:
name age gender grade score
李四 17 男 高三6班 62
王五 18 女 高三1班 93
小明 19 男 高三2班 53
马六 20 男 高三4班 77
小花 21 女 高三1班 90
张三 21 男 高三2班 88
可以看出查询结果中,是首先按年龄来降序排序,年龄相同时,如小花与张三,则按分数降序排列。