Melodic
@Melodic

Как сгруппировать результаты по диапазону дней?

Есть запрос:
SELECT SUM(sum) AS sum,start_date
FROM aes_deposit WHERE user_id=1552 AND start_date BETWEEN '1.12.2015' AND '31.12.2015' GROUP BY start_date

который выбирает сумму депозитов и группирует по дате и потом выводим на графике через js(дата+сумма).

Как сделать, что бы MySQL группировала по диапазону дат(по 2 дня,по 3 дня и т.п.)?
  • Вопрос задан
  • 154 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Для начала, у вас неправильный формат даты в запросе. Если вместо стандартного типа DATE использован VARCHAR или TEXT, то поиск будет работать некорректно.
Ну а для группировки достаточно составить функцию, которая будет выдавать одинаковые значения для величин, которые надо включить в одну группу.
GROUP BY FLOOR(TIME_TO_SEC(TIMEDIFF(`start_date`, '2015-12-01'))/2/24/60/60)

Ну и, конечно, индексы при такой группировке работать не будут.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы