簡體   English   中英

在SQL中查詢多對多關系

[英]Querying a many to many relationship in SQL

我有以下SQL關系

用戶有很多游戲游戲有可能用戶

User
----
id |  name | age |
__________________
1  |  mike |  11 |
2  |  jeff |  12 |
3  |  jake |  31 |
4  |  lemd |  81 |

Game
-----
id |  name  | time  |
_____________________
1  |  froyo | 11:10 |
2  |  honey | 12:22 |
3  |  combb | 13:00 |
4  |  lolli | 14:00 |


User_Game
----------
| userid  | game_id |
 ___________________
|   1     |   2     |
|   2     |   2     |
|   3     |   1     |
|   4     |   3     |
|   1     |   2     |
|   2     |   4     |
|   2     |   1     |

對於每個用戶,都有一種方法可以獲取他們玩過的游戲的列表,包括每個用戶參與的游戲數量。

編輯

我試過這個查詢

Select User.name, User.age
  from User  
  inner join User_Game 
  on User.id=User_Game.userid;

但是不確定我如何添加計數

SELECT 
    userid, 
    GROUP_CONCAT(game_id) as game_list,
    COUNT(*) as total_games
FROM 
    USER_GAME 
GROUP BY 
    userid;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM