Mysql中自定义排序-field()

Posted 海之角天之涯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql中自定义排序-field()相关的知识,希望对你有一定的参考价值。

在我们写项目的时候,我们经常会用到mysql中的排序,然而大多数情况下仅使用默认排序规则就够了

然而有时候某个字段含有自身业务的时候,需要特殊处理的时候,仅仅order by是不能解决的,这时候我们就会用到另一个mysql函数field()

order by (str,value1,value2,value3……),str与value1,value2,value3,其中str指的是字段名字,

意为:字段str按照字符串value1,value2,value3的顺序返回查询到的结果集。如果表中str字段值不存在于value1,value2,value3中的记录,放在结果集最前面返回。

例如

(1)、按照字段img_id为3,1,2,65的方式排序得到结果

技术图片

 

(2)、按照字段img_id为3,1,2的方式排序得到结果(这里并没有将img_id为65的记录进行排序,所以会放在结果集的最前面)

技术图片

 

当然,如果排序列是字符串类型的,也可以按此逻辑

以上是关于Mysql中自定义排序-field()的主要内容,如果未能解决你的问题,请参考以下文章

mysql field自定义排序函数

MySQL自定义排序

python中自定义排序函数

如何在 Java 中自定义排序列表

使用 LINQ 在 OrderBy 中自定义排序逻辑

如何根据两列在熊猫数据框中自定义排序?