我一直在从事一个个人项目,用户可以在其中对不同的商店进行评分。其中,我正在处理两个表模式。
表:商店
表:评级
现在我想使用 SQL 连接获取所有商店及其相应的评级。
$shop = Shop::leftJoin('ratings', 'ratings.shop_id', '=', 'shops.id')
->select('shops.*', 'ratings.rating')->get();
return response($shop);
Run Code Online (Sandbox Code Playgroud)
当我这样做时,我得到了回复,但同一商店的每个评级都会重复该回复。
[
{
"id": 1,
"name": "manjil",
"rating": 4
},
{
"id": 1,
"name": "manjil",
"rating": 5
},
{
"id": 1,
"name": "manjil",
"rating": 2
}]
Run Code Online (Sandbox Code Playgroud)
我真正想要的是:
[{
"id": 1,
"name": "manjil",
"rating": [4,5,2]
}]
Run Code Online (Sandbox Code Playgroud)
请 Laravel 极客帮忙:)