【问题标题】:Fill the table with data (Player Rankings)用数据填充表格(玩家排名)
【发布时间】:2014-09-25 13:41:09
【问题描述】:

您好,我有 3 张桌子:

  1. 玩家(身份证、姓名、姓氏)
  2. 游戏(id、id_gamer、积分)
  3. 总数(id、id_gamer、name_gamer、total_Points、位置)

在表中:playersgames,管理员输入的记录,

在表totals我想通过sql查询输入关于每个玩家的信息(id_gamer和name_gamer),以及点数(sum(points))和在评分中的位置

我开始这样做,但它不起作用

INSERT INTO totals (id_gamer, name_gamer) SELECT id, Name FROM players ;

谢谢

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    您可以使用它来填写每个玩家的总分:

    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
    

    获得积分后,您可以对其进行更新以填补职位。有关在 MySQL 中计算排名的方法,请参阅Rank function in MySQL

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-20
      • 1970-01-01
      • 2019-03-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多