СУММНАЯ ГРУППА MYSQL ПО

Я работаю по системе оценок в средней школе.

В моей школе оценки можно изменить, переработав задачи, и я сохраняю эти изменения с датами.

У меня есть функция, которая правильно возвращает средние значения, потому что самая последняя оценка помечена полем «текущая» со значением «1». Я хотел бы сделать функцию способной возвращать самую последнюю оценку относительно даты в прошлом. Я рисую график того, как их среднее значение менялось с течением времени.

Я бы хотел сделать что-то вроде этого:

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

Я не могу использовать сумму и группировать по. Это ошибки ...

Лучшее, что я могу придумать, - это сделать подвыбор. Есть другие мысли?


person Stephane    schedule 21.10.2009    source источник


Ответы (2)


GROUP BY должна предшествовать ORDER BY:

  SELECT SUM(g.points) 
    FROM GRADES g
   WHERE g.date < 'thedate' 
GROUP BY g.assignmentid
ORDER BY g.date DESC 
person OMG Ponies    schedule 21.10.2009

Попробуй это:

SELECT cat_name, SUM(amount) AS total_amount
FROM table
GROUP BY cat_name
person Gaurang    schedule 19.10.2012
comment
Где вы видите сумму в вопросе? о_О - person Erdal G.; 11.03.2016
comment
он скопировал и вставил ответ прямо из другого вопроса: stackoverflow.com/questions/6105767/mysql-group-by -сумма - person beterthanlife; 21.07.2016