我已经意识到某种在线游戏。现在我想展示一个统计数据,您可以在其中看到谁是您对抗最多的敌人。
我已将游戏存储在数据库中。玩家存储在字段 PLAYER1 和 PLAYER2 中。这取决于,哪一个邀请另一个。开始游戏并邀请另一人的是PLAYER1。
ID | PLAYER1 | PLAYER2 | GAMESTATE
现在我有一些条目。假设我是玩家 1,我的朋友 (2) 邀请了我两次,我也邀请了他一次。条目如下所示:
1 | 2 | 1 | 1
2 | 2 | 1 | 1
3 | 1 | 2 | 1
4 | 3 | 4 | 1 <-- some other random game
现在,我想知道我玩得最多的球员。我实际上需要一个选择来计算最常玩的玩家,但在这两种情况下(PLAYER1 或 PLAYER2)。
单个查询的最佳解决方案是什么?我可以使用MySQL UNION
还是 GROUP BY?如果是,我该怎么办?
编辑:预期结果实际上是这样的:
PLAYER | MOST_ENEMY | GAMES
1 | 2 | 3
2 | 1 | 3
3 | 4 | 1
4 | 3 | 1
感谢您的帮助!