2015-09-29 3 views
1

У меня есть строки данных в базе данных, у которых есть DATETIME, называемая датой. Существует еще один столбец, называемый точками.Выбор строк данных в месяцах

Мне нужно подсчитывать все баллы за каждый месяц и возвращать список общих баллов за каждый месяц по месяцу с наибольшим количеством пунктов вниз.

Я не уверен, с чего начать, когда нужно выбирать строки по месяцам?

+1

Возможный дубликат [MySQL Query GROUP BY день/месяц/год] (http://stackoverflow.com/questions/508791/mysql-query-group-by-day-month-year) – postelrich

ответ

1

Вы можете извлечь месяц и год с даты, используя monthname (или month) и year, соответственно, и группу ими:

SELECT YEAR(`date`), MONTHNAME(`date`), SUM(`points`) 
FROM  mytable 
GROUP BY YEAR(`date`), MONTHNAME(`date`) 
ORDER BY 3 DESC 

Обратите внимание, что если ваша таблица представляет один год, или вы хотите для расчета многолетней общей суммы вы должны опустить выражение года из списка select и предложения group by.

+0

Я был за помощь при открытии этого вопроса. Теперь ты помог мне. Имя месяца будет очень полезно для меня. Увеличен. – C4u

Смежные вопросы