MICUU
微资讯
声卡
创新2024全套教程
5.1声卡全套
创新声卡驱动
板载声卡调试全套教程
Sam机架安装
Sam机架
音效助手
专题
文档
技术文档汇总
站内文档
更多
软件
更新日志
关于
装机必备
Gramos模板
光年后台模板
Betube模板
美图
友情链接
站内导航
关于
搜索
退出登录
登录
原创
thinkphp6.0自定义排序order by field
2021-01-28
54.39w热度
相信很多时候我们需要有个自定义排序的功能,比如登录用户的点赞排序到第一位等等。 ![](https://micuu.com/data/upload/avatar/20210128/1b7ad4e34aeb62eee4442099261c33c2.jpg) 这种情况下我们一般都是使用自定义排序的功能,那么原生sql又是怎么实现的呢? ``` SELECT * FROM `ct_xxx` ORDER BY field(id,2,1,3) //示例代码 SELECT * FROM `zhe_work_order` WHERE ( `uid` = 221 ) AND `zhe_work_order`.`delete_time` IS NULL ORDER BY field(id,1798) desc ``` 那么在thinkphp6.0中我们如何封装成这样的语句? ``` 1 $list = WorkOrder::where("uid",$user["id"]) ->orderRaw("field(id,2,12,9") ->select(); //或者 2 $list = WorkOrder::where("uid",$user["id"]) ->orderRaw("field(id,8") ->select(); //或者3 Db::table('think_user') ->where('status', 1) ->orderRaw("field(name,'thinkphp','onethink','kancloud')") ->limit(5) ->select(); //或者 4 $list = WorkOrder::where("uid",$user["id"]) ->orderRaw("field(id,1587) desc") ->select(); ``` 以上的方法都是可以的。建议使用第四种情况 本篇文章仅针对thinkphp6.0及以上版本,thinkphp5.0 - 5.1 3.2 等版本参考 https://blog.csdn.net/Aaroun/article/details/86631013 https://blog.csdn.net/qq_39973053/article/details/82864659 https://www.pianshen.com/article/36621161922/ 相信以上资料可以帮助到大家。
注:原创不易,转载请注明出处(
https://micuu.com/new/1360.html
),本站所有资源来源于网络收集,如有侵权请联系QQ245557979进行清除。
最后修改与 2022-02-21
上一篇:
我发现卢松松网的评论大部分都是机器人灌水
下一篇:
转载:高向东不再担任定边采油厂厂长,曾被曝向沈浩行贿5万美元
留言反馈
请先登录
问题反馈渠道,如有软件无法下载或者其他问题可反馈。【由于某种原因,目前留言不展示】
用户需要登录后才能留言反馈
立即留言
珍藏视频
10分钟高效燃脂
30天高效瘦脸操
5分钟缓解颈椎操
友人
微博
全民K歌
唱吧
今日头条
悠悠网
科技小锅盖
彼岸桌面
阮一峰
laravel社区
V2ex
掘金
更多>