最近在用框架给公司App写接口时,碰到了一个棘手的问题:
对查询结果进行排序并进行分页(进行了简略修改),下面是最终结果代码:
1
2
3
4
5
6
7
|
$example = Example::select(DB::raw( 'max(id) as some_id,this_id' )) ->where( 'id' , $id ) ->groupBy( 'this_id' ) ->orderBy( 'some_id' , 'desc' ) ->skip( $offset ) ->take( $limit ) ->get(); |
但是在这个过程中,经历了一些波折。
groupBy中的字段必须是select的字段,并且orderBy从句也必须是select的字段。但是如果select的字段使用聚合函数呢?抱着
试一试的态度,我运行了一下postman.
binggo,通过!并且实现了效果。特此记录。
以上这篇浅谈laravel框架sql中groupBy之后排序的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/sanbingyutuoniao123/article/details/53888053