在laravel中查询数据需要对某列进行排序,但是默认数据为null,这时候排序null会排列在前,我应该如何来写才能将值为null的排列在后面?

在laravel中查询数据需要对某列进行排序,但是默认数据为null,这时候排序null会排列在前,我应该如何来写才能将值为null的排列在后面?我使用的是查询构造器的方式。

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
最佳答案

->orderBy(DB::Raw('case when sort is null then 999999999 else sort end'),'asc'),使用原生解决。

4年前 评论
讨论数量: 3

->orderBy(DB::Raw('case when sort is null then 999999999 else sort end'),'asc'),使用原生解决。

4年前 评论
chowjiawei

还有种方法 查询加上 该字段不为空的查询 把有值的查出来并排序好 然后把id放到新的语句按排序的id来排序

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!