mysql - 如何对特定行使用求和查询

标签 mysql sql

我的 MYSQL 查询有点问题,在这里我返回所有结果以填充排名表。

这张 table 看起来像是这个的放大版

MEMBERS RESULTS TABLE
member_id      1   2   1   2
track_id       1   1   2   2
total_points  234 432 222 234

无论 member_id 是什么,当我需要它们计算每个 member_id 行的位置时,SUM(total) 将返回所有 total_points 的 SUM是。

SELECT members.member_id, members.teamname, SUM(total_points)
FROM members, members_leagues, member_results
   WHERE members.member_id = members_leagues.member_id
     AND members_leagues.league_id = '45'
       AND member_results.track_id = '1'
          AND member_results.member_id = members_leagues.member_id
             AND members_leagues.start_race >= member_results.track_id 

最佳答案

你需要一个 GROUP BY 子句

SELECT members.member_id, members.teamname, SUM(total_points)
FROM members, members_leagues, member_results
   WHERE members.member_id = members_leagues.member_id
     AND members_leagues.league_id = '45'
       AND member_results.track_id = '1'
          AND member_results.member_id = members_leagues.member_id
             AND members_leagues.start_race >= member_results.track_id 
GROUP BY members.memberID

关于mysql - 如何对特定行使用求和查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7653670/

相关文章:

mysql - EF5 :could not be created because the principal key columns could not be determined. 使用 AddForeignKey 流畅 API 完全指定外键

mysql - 如何优化 2500 万行的批量 sql 更新

php - Mysql 之间比较一个字段?

java - 查看MySQL数据库内容

mysql - 折叠窗口间隔

PHP mysql 当查询结果== true时返回参数

sql - 将 DATEPART 存储在表中

mysql - 比较两个查询结果并输出差异

mysql - SQL查询: Select all references after a specific item

java - Android SQL之类