欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql 使用order by

程序员文章站 2023-10-17 11:42:48
1、mysql 使用order by field() 自定义排序 order by field(value,str1,str2,str3,str4......strn) 例如:select * from driver_log order by field(name,'Suzi','Ben','Hen ......

1、mysql 使用order by field() 自定义排序

order by field(value,str1,str2,str3,str4......strn)

例如:select * from driver_log order by field(name,'suzi','ben','henry');

mysql 使用order by

2、order by  后可加多个字段,用英文逗号隔开。

f1用升序, f2降序,sql该这样写

order by  f1(默认升序), f2  desc(或者:order by  f1 asc, f2  desc)

如果都用降序,必须用两个desc:order by  f1 desc, f2 desc

例如: 按照code, name进行降序排序:select * from a order by code, name desc;

 对比code,name的单个字段降序排序,我们可以发现, 使用 order by code desc, name desc的时候,mysql会先以code进行降序排序,在code进行降序排序该基础上,再使用name进行降序排序

另外我们还可以使用contat函数把多个字段拼接起来,在进行排序。但是要保证字段不能为null。下面我们来看一下concat的sql语句和结果。

select * from a order by concat(code,name) desc

结论:order by concat(code, name) desc的效果等同于 order by code desc, name desc