mysql查询一个订单表 按照状态来排序 怎么写 -1永远排最后 2排最前?

状态 status 订单状态 -1撤销 0待付款1待接单2待操作3待审核4已审核5待好评6已好评 7完成

待操作永远是排最前 然后撤销的永远排最后 然后其他状态按照正常的升序来排 这样的排序能用mysql完成吗? 如果不能,用php怎么写?


mysql
php
订单表
2022-11-01 13:04:14
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
叶落风逝yzm
select * from (select case when status==2 then 7,
when status==-1 then -1
end as newStatus,status from m_table) m order by newStatus desc;

sql 没有验证过,但是思路没问题,将状态对应的值重新映射一列作为排序用的种子。

分享
微博
QQ
微信
回复
2022-11-01 14:45:14
相关问题
MySQL 如何按照地理位置排序?
1067浏览 • 1回复 待解决
求教一个sql语句里传参怎么
1479浏览 • 1回复 待解决
mysql多对多查询sql怎么
463浏览 • 1回复 待解决
一个mysql插入截断问题有懂的吗?
336浏览 • 1回复 待解决
mysql 查询排序问题有了解的吗?
359浏览 • 1回复 待解决
Mysql的数据如何打乱排序
679浏览 • 1回复 待解决
请教一个sql查询需求?
850浏览 • 1回复 待解决
关于SQL查询查询
1203浏览 • 1回复 待解决
mysql左连接的一个问题
565浏览 • 1回复 待解决
如果一个多级的获取数据的问题?
1542浏览 • 1回复 待解决
sequelize;mysql关联查询的问题
1304浏览 • 1回复 待解决
mysql一个问题有懂的吗?
545浏览 • 1回复 待解决
查询+groupby怎么做?
537浏览 • 1回复 待解决
mongodb实现特定值排序查询
626浏览 • 1回复 待解决