Laravel groupBy 带分页

Eme*_*nes 5 laravel

我正在尝试使用 queryBuilder 获取一张表中的所有结果,按 15 个字段分组分页。

$data['invoices'] = InvoiceModel::selectRaw("*")
    ->groupBy('serie')
    ->paginate(15);
Run Code Online (Sandbox Code Playgroud)

Laravel 抛出以下错误:

SQLSTATE[42000]:语法错误或访问冲突:1055 SELECT 列表的表达式 #1 不在 GROUP BY 子句中,并且包含非聚合列“projetoservidor.vendas_195295269.id”,该列在功能上不依赖于 GROUP BY 子句中的列;这与 sql_mode=only_full_group_by 不兼容(SQL: select count(*) asaggregate from (select * from vendas_195295269group by serie) as aggregate_table

我应该怎么办?

Don*_*ash 7

Laravel 不支持带有分页的 groupBy

在此输入图像描述

在 Laravel 文档中阅读更多内容:

更新

上述警告已从 Laravel 8.x 文档中删除。@ronline 在评论中确认,从那时起,使用groupBy 的分页操作已经被整理出来。