我有一个管理状态数据的表:状态可以是1,2或3。
我需要订购SELECT QUERY
,首先按2
然后3
然后1
....或任何我想要的订单。
答案 0 :(得分: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