У меня есть эти таблицы:
Скрипка столов: http://sqlfiddle.com/#!9/18c65
С помощью этого запроса:
SELECT user_id AS user, round(AVG(cost_freight), 0) AS average FROM 'freights' GROUP BY user ORDER BY average ASC LIMIT 10
я получаю среднее количество грузов (cost_freight), сгруппированных по пользователю (значения, выделенные полужирным шрифтом, являются аутентифицированным пользователем):
Но теперь мне нужно получить среднее количество грузов (cost_freight) каждого месяца, сгруппированных пользователем, результат должен быть таким:
и здесь я попытался несколько способов, но я не могу получить желаемый результат.
Я был бы очень признателен за вашу помощь.
Благодарю.
Используйте один столбец (МЕСЯЦ (дата)) в группу. Попробуй это,
SELECT user_id AS user,MONTH(date), round(AVG(cost_freight), 0) AS average FROM 'freights' GROUP BY user,MONTH(date) ORDER BY average ASC LIMIT 10
SELECT MONTH(date), user_id AS user,round(AVG(cost_freight), 0) AS average FROM
грузов `GROUP BY MONTH (дата), пользователь ORDER BY Среднее ASC LIMIT 10`