【问题标题】:MYSQL SUM GROUP BYMYSQL 和 GROUP BY
【发布时间】:2010-12-08 14:16:18
【问题描述】:

我正在研究一个高中评分系统。

在我的学校,可以通过修改问题来更改成绩,我将这些更改与日期一起存储。

我有一个函数可以正确返回平均值,因为最近的成绩标有一个值为“1”的“当前”字段。我想让该函数能够返回关于过去日期的最新成绩。我正在绘制他们的平均值随时间变化的图表。

我想做的是这样的:

select sum(grades.points) 
  from grades 
 where date < 'thedate' 
order by date DESC 
group by assignmentID

我不能使用 sum 和 group by。它错误...

我能想到的最好的方法是进行子选择。还有其他想法吗?

【问题讨论】:

    标签: sql mysql group-by sum


    【解决方案1】:

    GROUP BY 必须在 ORDER BY 之前:

      SELECT SUM(g.points) 
        FROM GRADES g
       WHERE g.date < 'thedate' 
    GROUP BY g.assignmentid
    ORDER BY g.date DESC 
    

    【讨论】:

      【解决方案2】:

      试试这个:

      SELECT cat_name, SUM(amount) AS total_amount
      FROM table
      GROUP BY cat_name
      

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-06
      • 2021-02-22
      • 2012-09-11
      • 2022-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-11
      相关资源
      最近更新 更多