扫码关注官方订阅号
多条商品信息排序 ,先按时间排序,在按照 是否认证排序,一共这两个条件。
时间按时间挫存储,排序简单,但是加上 认证状态 status= 3 的排在前面,那该怎么做,求教
认证高级PHP讲师
如果状态值是有限的,可以试试 order by FIELD(status, 3, 0, 1)
查两次,第一次查 status=3 第二次查 status!=3,然后再把两个结果Union起来,这种需求最好不要在数据库里面做,可以好好考虑一下自己的业务,这样的数据库结构是否合理,如果没问题,像这样的需求是不是可以放到业务端来做,不要给数据库太大的压力。
status=3
status!=3
order by time desc,status desc
你的状态值有几个?
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
如果状态值是有限的,可以试试 order by FIELD(status, 3, 0, 1)
查两次,第一次查
status=3第二次查status!=3,然后再把两个结果Union起来,这种需求最好不要在数据库里面做,可以好好考虑一下自己的业务,这样的数据库结构是否合理,如果没问题,像这样的需求是不是可以放到业务端来做,不要给数据库太大的压力。order by time desc,status desc
你的状态值有几个?