首页 > 代码库 > SQL order by的用法

SQL order by的用法

    首先,order by是用来写在where之后,给多个字段来排序的一个DQL查询语句。

    其次,order by写法:

    1.  select 字段列表/* from 表名 where 条件 order by 字段名1 asc/desc, 字段名2 asc/desc,.......

    2.  select 字段列表/* from 表名 where 条件 order by 字段序号 asc/desc, 字段序号 asc/desc,....... (此时字段序号要从1开始)

    3.  select 字段列表/* from 表名 where 条件 order by 字段别名1 asc/desc, 字段别名2 asc/desc,.......(这里类似于第一种,无非就是把字段名加了个别名来代替而已。)

    然后,order by的方式:

    1.asc 升序,可以省略,是数据库默认的排序方式

    2.desc 降序,跟升序相反。

    最后要注意order by的原则,写在最前面的字段,他的优先级最高,也就是写法中第一个的字段名1的优先级最高,优先执行他的内容。

 

下面举个栗子吧!

这里我有几个表

技术分享技术分享

技术分享

首先以sclass的降序查找student表中的记录

写法为:

select * from student t order by t.sclass desc;

输出为:技术分享

可以看到是以sclass的降序排列的。

再来:以Cno升序、Degree降序查询Score表的所有记录。

写法为:

select * from score s order by s.cno, s.degree desc;

输出为:

技术分享

可以看到是优先以cno的升序来排列的,在cno相同的里面再以degree的降序来排列的。

 

 所以总结一下,order by的用法就是用来做排序,写在where之后,简单明了。

 

SQL order by的用法