如何按照订单状态对订单表进行排序,将“待操作”排在最前,将“撤销”排在最后,其他状态按升序排列?
根据状态对订单进行排序
如何按照订单状态对订单表进行排序,并始终将“-1”撤销状态排在最后,而“2”待操作状态排在最前面,其余状态按升序排列呢?
以下提供了 mysql 解决方案:
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;
该方法创建一个新的列“newstatus”,它是原始状态的修改值,用于排序。当状态为“2”(待操作)时,newstatus 被映射为“7”,从而使其在排序时排在第一位。当状态为“-1”(撤销)时,newstatus 被映射为“-1”,使其排在最后。其余状态保持其原始值并按照升序排序。
以上就是如何按照订单状态对订单表进行排序,将“待操作”排在最前,将“撤销”排在最后,其他状态按升序排列?的详细内容,更多请关注其它相关文章!