mysql——中文数字排序的实现(FIELD)

空扰寡人 提交于 2019-12-11 06:18:49

今天遇到一个需求,要求排序输出网格信息,但是数据是第三方对接插入的,并没有给我们排好顺序。所以只能自己动手了。

下图是原数据:

我们需要将其升序输出。
使用mysql中的函数FIELD。
语法如下:

SELECT identifier FROM 表名 ORDER BY FIELD(SUBSTRING(identifier,3,1),'一','二','三','四','五','六','七','八','九');

1)ORDER BY 不用多说,排序
2)SUBSTRING的作用是截取到我们想要排序的依据,这个跟java中substring是差不多的,不多说。
3)‘一’,这个就是我们自定义的排序规则了,我们也可以定义从大到小,甚至不是顺序的,简单来说就是我们定义的才是排序规则!

输出效果:

好了,就这么简单,下一期来一波order by 的详解~

谢谢观看,转载需注明出处哦~

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!