@georgiiy08
Веду разработку сайта

Как можно просуммировать данные из таблицы mysql за предыдущий месяц с последующим выводом этой суммы?

Есть таблица testimony : 5f6461f5ec809406147564.jpeg
При наступлении первого числа месяца (февраль 28, март 31 и т.д.) подсчитывать сумму колонки amountcoll за предыдущий месяц, беря дату из колонки date. В начале года делать то же самое. Подскажите пожалуйста, как это реализовать ?

Дата в бд находится в виде 2020-09-01
Колонка DATEANDTIME не учитывается, так как там другие значения.
  • Вопрос задан
  • 103 просмотра
Решения вопроса 2
petermzg
@petermzg
Самый лучший программист
Вот так
select sum(...)
  where DATE_FORMAT(date, "%Y-%m") = DATE_FORMAT(date_add(date_add(now(), interval -DAY(now()) + 1 DAY), interval -2 DAY), "%Y-%m")
Ответ написан
FanatPHP
@FanatPHP
Чебуратор тега РНР
примитивный запрос вида
select sum(amountcoll) from testimony where date between дана начала and дата конца

даты проще всего посчитать в пхп, но если хочется извратиться то

BETWEEN DATE_FORMAT(NOW() - INTERVAL 1 MONTH, '%Y-%m-01') AND LAST_DAY(NOW() - INTERVAL 1 MONTH)


преобразования поля с датой в запросах следует избегать, так как при этом не используются индексы
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы