您好,我有 3 张 table :
- 玩家(ID、姓名)
- 游戏(id、id_gamer、积分)
- 总计(id、id_gamer、name_gamer、total_Points、位置)
表中:players
和games
,记录管理员输入的内容,
在表totals
中我想通过sql查询输入有关每个玩家(id_gamer和name_gamer)的信息,以及得分(sum(points))和评级中的位置
我开始这样做,但不起作用
INSERT INTO totals (id_gamer, name_gamer) SELECT id, Name FROM players ;
谢谢
最佳答案
您可以使用它来填写每个玩家的总分:
INSERT INTO totals (id_gamer, name_gamer, total_points)
SELECT p.id, p.name, IFNULL(SUM(g.points), 0)
FROM players AS p
LEFT JOIN games AS g ON p.id = g.id_gamer
GROUP BY p.id
获得积分后,您可以更新它以填补职位。请参阅Rank function in MySQL了解在 MySQL 中计算排名的方法。
关于mysql - 用数据填充表格(玩家排名),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26031263/