Каждый клиент имеет свой платежный цикл 30 дней, начиная с предопределенного billing_cycle_day (например, billing_cycle_day - 7 октября, тогда их биллинговый цикл будет 7 октября до 6 ноября и т. Д. Для каждого месяц ..)mysql выбор диапазона 30 дней от значения столбца
//kilowatts : double
//report_date : timestamp
//billing_cycle_day : int
SELECT sum(m.kilowatts), DAY(m.report_date), d.billing_cycle_day
FROM reports_month m
join device d on m.mobile_number = d.mobile_number
where m.mobile_number = '123'
GROUP BY DAY(m.report_date)
Это дает общее количество киловатт за каждый день для всех доступных записей, сгруппированных по дням. Теперь то, что я хочу, чтобы ограничить его платежный цикл каждого клиента ....
Я попытался с помощью
SELECT sum(m.kilowatts), DAY(m.report_date), d.billing_cycle_day
FROM reports_month m
join device d on m.mobile_number = d.mobile_number
where m.mobile_number = '123'
and DAY(m.report_date) BETWEEN d.billing_cycle_day AND d.billing_cycle_day + INTERVAL 30 DAY
GROUP BY DAY(m.report_date)
и множество вариаций functions.Do я должен пойти на хранимую процедуру то PLS помочь мне в этом.
Но до сих пор не повезло ,,,, Любая помощь не будет сильно ценится ....