【发布时间】:2015-06-22 13:34:52
【问题描述】:
我有 2 张桌子:
图片 - 包含 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 仍然把一切都搞砸了。
【问题讨论】:
标签: mysql laravel orm group-by relationship