如何按照订单状态排序,将“待操作”置于首位,“已撤销”置于末尾?
在 mysql 查询中,要按照订单状态排序,并确保“待操作”订单始终排在最前面,“已撤销”订单始终排在最后,可以使用以下查询:
select * from ( select case when status == 2 then 7 -- 将 "待操作" 映射到 7 when status == -1 then -1 -- 将 "已撤销" 映射到 -1 end as newStatus, status from m_table ) m order by newStatus desc;
此查询的工作原理是创建一个新的列 newstatus,将某些状态映射到不同的值:
新创建的 newstatus 列用于排序,确保“待操作”订单具有最高的值(排在最前面),而“已撤销”订单具有最低的值(排在最后)。原始 status 列仍可用于检索实际状态。
以上就是按照订单状态排序,如何置顶“待操作”并置底“已撤销”?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号