Таблица со строковым полем, где хранится дата (не предлагайте мне изменить тип поля. Это вызовет опасность).
+--+----------+------+
|id|date |amount|
+--+----------+------+
|1 |23-03-2014|5000 |
+--+----------+------+
|2 |25-03-2014|3000 |
+--+----------+------+
|3 |21-04-2014|3000 |
+--+----------+------+
|4 |25-04-2014|4000 |
+--+----------+------+
Я хочу написать модельную функцию, которая будет возвращать сумму суммы, сгруппированной по месяцам из таблицы. Как я должен это делать? Это покажет вывод как
03 - 8000
04 - 7000
SELECT MONTH(date_field) as mon, SUM(amount) as total FROM table_name GROUP BY MONTH(date_field);
Обновить:
SELECT SUBSTR(date_field,6,2) as mon, SUM(amount) as total FROM table_name GROUP BY mon;
Вы можете попробовать следующий запрос
SELECT SUM(amount) FROM table GROUP BY MONTH(date)
Пытаться МЕСЯЦ()
SELECT MONTH(date),SUM(amount) FROM table GROUP BY MONTH(date)