我正在创建玩家徽章的排名,但我坚持使用 db 查询。
表: 用户(ID),俱乐部(ID),俱乐部用户(用户ID,俱乐部ID),徽章(用户ID)
我想从指定俱乐部(例如 club.id = 1)获取所有用户的列表以及他们拥有的徽章数量。结果应按徽章数量排序。
如何创建那种数据库查询?Eloquent 可以吗?
应该用db::table
and制作join
吗?
Table user
id|name
1|John
2|Robert
3|Kate
Table club
id|name
1|Sunshine Club
2|Example Club
Table club_user
user_id|club_id
1|1
2|1
3|2
Table bagdes
id|name|user_id|club_id
1|Champion|1|1
2|Some badge|1|1
3|example|2|1
4|Gold Badge|3|2
所以如果我想获得俱乐部 1 的用户排名,按徽章数量排序。
我应该得到:
name|number of badges
John|2 (badges)
Robert|1 (badge)
Kate is not it this club.