
这个的原始代码是
$sqlz = Db::connect('数据库')->table('表名')->alias('g')
->join('表名 u', 'g.=u.')
->join('数据库..表名 b', 'g.=b.')
->where($where)
->field('')
->group('')
->paginate('20',false,['query'=>request()->param()]);
经过测试发现,先将查询的语句当成子查询,然后在查询,就可以分组了
//子查询
$sqlz = Db::connect('数据库')->table('表名')->alias('g')
->join('表名 u', 'g.=u.')
->join('数据库..表名 b', 'g.=b.')
->where($where)
->field('')
->group('')
->buildSql();
//分页
$sql = Db::connect('数据库')->table([$sqlz => 'a'])
->field('')
->paginate('20',false,['query'=>request()->param()]);
然后就成功了
解决复杂SQL分组与分页问题
本文介绍了一种解决在复杂SQL联表查询中进行分组与分页问题的方法,通过使用子查询的方式,有效地实现了数据的正确分组与高效分页,适用于大型数据集的处理。
771

被折叠的 条评论
为什么被折叠?



