2009-10-21 14 views
4

나는 고등학교 등급 시스템을 연구 중이다.MYSQL SUM GROUP BY

내 학교에서는 재 작업 문제로 성적을 변경할 수 있으며 이러한 변경 사항을 날짜와 함께 저장합니다.

가장 최근 등급에 '1'값이있는 '현재'입력란이 표시되어 있으므로 평균을 제대로 반환하는 함수가 있습니다. 나는 과거의 날짜와 관련하여 가장 최근의 등급을 반환 할 수있는 함수를 만들고 싶습니다. 나는 그들의 평균이 시간에 따라 어떻게 변했는지에 대한 그래프를 만들고 있습니다. 나는에 의해 합계와 그룹을 사용할 수 없습니다

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

: 내가하고 싶은 무엇

이 같은 것입니다. 그것은 오류입니다 ...

제가 생각할 수있는 가장 좋은 것은 하위 선택을하는 것입니다. 다른 생각? BY가 와야

답변

20

GROUP ORDER BY 전에 :

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

이 시도 : 당신이 질문에 어떤 "양"을 참조 할

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

를? o_O –

+3

그는 다른 질문에서 직접 답변을 복사하여 붙여 넣습니다. http://stackoverflow.com/questions/6105767/mysql-group-by-sum – beterthanlife