我有一个管理状态数据的表:状态可以是 1、2 或 3。
我需要订购SELECT QUERY
,首先是2
,然后是3
,然后是1
...或任何我想要的命令。
最佳答案
您可以使用 mysql 的 FIELD()
函数进行自定义排序
SELECT * FROM table
ORDER BY FIELD(`status`,2,3,1)
或者你可以使用CASE
SELECT * FROM table
ORDER BY
(CASE WHEN `status` =2 THEN 1
WHEN `status` =3 THEN 2
WHEN `status` =1 THEN 3
ELSE END) ASC
关于MySQL - 如何按范围内的任意数字排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21242168/