gpt4 book ai didi

mysql - Laravel 多对多如何在 Eloquent 或查询构建器中形成查询

转载 作者:行者123 更新时间:2023-11-30 21:52:31 25 4
gpt4 key购买 nike

从以下查询我得到了预期的结果:

SELECT *
FROM rooms r
JOIN amenities_room am
ON r.id = am.room_id
JOIN amenities a
ON am.amenities_id = a.id
AND a.id IN (2,3)
GROUP BY r.id
HAVING COUNT(*)=2;

我如何在(Eloquent 或 Query Builder 中)以 laravel 方式进行查询

注意:涉及以下表格:

房间
编号
号码
姓名

便利设施
编号
姓名

amenities_room
房间编号
amenities_id

最佳答案

$rooms = Room::with('amenities')
->withCount('amenities', function($query){
$query->whereIn('id', [2, 3]);
})
->where('amenities_count', 2)
->get()

统计相关模型的文档:https://laravel.com/docs/5.5/eloquent-relationships#counting-related-models

关于mysql - Laravel 多对多如何在 Eloquent 或查询构建器中形成查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46620956/

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