如何在 laravel 中使用 concat 和 group by?
Posted
技术标签:
【中文标题】如何在 laravel 中使用 concat 和 group by?【英文标题】:How to use concat and group by in laravel? 【发布时间】:2021-06-03 02:33:42 【问题描述】:我想使用GROUP BY
和CONCAT
获取数据。我可以在 SQL 内联编辑器中获取这些数据我想知道如何在 Laravel 中获取这些数据。
我想要我想要的结果,就像附加的图片一样
我的 SQL 查询是:
SELECT created_at, GROUP_CONCAT(answer) FROM answers
where cid=293 and qid in (7, 8, 9, 10, 11, 12)
group by created_at
【问题讨论】:
您使用的是 Eloquent 还是 Query Builder? @Daniel Eloquent 【参考方案1】:Eloquent 查询应该是这样的:
$answers = Answer::select('created_at')
->selectRaw('GROUP_CONCAT(answer)')
->where('cid', 293)
->whereIn('qid', [7,8,9,10,11,12])
->groupBy('created_at')
->get();
【讨论】:
【参考方案2】:你可以这样做,
$list = Modelname::where('cid', 293)
->whereIn('qid',[7, 8, 9, 10, 11, 12])
->select('created_at')
->selectRaw('GROUP_CONCAT(answer) as answer')
->groupBy('created_at')
->get();
【讨论】:
非常感谢......你拯救了我的一天以上是关于如何在 laravel 中使用 concat 和 group by?的主要内容,如果未能解决你的问题,请参考以下文章
Laravel如何使用querybuilder从两列进行组合concat
Laravel 5 中的 group_concat() 问题