以下sql将返回游戏会话表中玩过多少用户的计数.
SELECT count(DISTINCT `userID`) as count FROM `game_sessions`
Run Code Online (Sandbox Code Playgroud)
在此表"game_sessions"中,每行包含用户会话的详细信息.因此,可能有3个,40个甚至500个行具有相同的"userID".我理解上面的查询会找出有多少不同的"useriD"值,或者换句话说,有多少人玩过至少一个游戏.
如何修改此查询,以便了解有多少人玩过至少两场比赛或至少30场比赛,从而查看有多少用户ID被重复2次,5次,10次等等
您不需要DISTINCT在此使用关键字,只需COUNT基于每个的记录userID.试试这个:
SELECT userID,
COUNT(userID) TotalCount
FROM game_sessions
GROUP BY userID
HAVING COUNT(userID) > 1
Run Code Online (Sandbox Code Playgroud)