gpt4 book ai didi

mysql - Laravel ORM 列表 groupBy 相关记录

转载 作者:行者123 更新时间:2023-11-30 22:45:43 25 4
gpt4 key购买 nike

我有 2 个表:
images - 包含id, room_id, floor_id等信息,
对象 - 包含 images_id、对象。

人际关系:
图像有许多对象
对象有一个图像

我想按 room_id 对图像进行分组,然后根据这些分组图像列出房间的所有对象。

目前我有2个查询:

Images::where('floor_id', '=', $floor_id)
->groupBy('room_id')->get(array('*', DB::raw('GROUP_CONCAT(id) as rooms')));

然后我遍历所有图像组并在其中寻找对象。

Objects::whereIn('images_id', explode(',', $rooms))->get()

是否可以将这 2 个查询合并为 1 个查询,如果可以,那么怎么做?

我尝试过预加载,但 groupBy 仍然把一切都搞砸了。

最佳答案

这是一个有趣的问题。要保存额外的查询,您可以使用返回的集合并按其分组。

Images::where('floor_id', '=', $floor_id)
->with('objects')
->get()
->groupBy('room_id');

关于mysql - Laravel ORM 列表 groupBy 相关记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29669742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com