неделю. Раз в сутки обнуляется. Задача за каждые сутки найти максимумы и вывести среднее их значение за весь период. Кроме сегодняшних суток. Помогли составить Sql запрос - но он выдает неправильно. Занижает в раза 4.
Запрос прикладываю, он правильно поставлен?
SELECT AVG(totals1.state1) AS state2 from (SELECT max(state) as state1 FROM states WHERE entity_id = "sensor.money_day_kotel" and DATE_FORMAT(last_updated, "%Y%m%d") != DATE_FORMAT(CURDATE(), "%Y%m%d") GROUP BY DATE_FORMAT(last_updated, "%Y%m%d") ) as totals1
В чем проблема посмотреть самому? Вы понимаете что тут написано?
Если честно нет(
Теперь правильный вопрос сформулирован: я не понимаю, что написано, помогите! —Тут из запроса ниже, вернется среднее значение, надеюсь, что такое среднее пояснять не надо SELECT AVG(totals1.state1) AS state2 from ( —Вот тут написан подзапрос который вернет вам максимальные значения в разрезе каждого дня, для значения = sensor.money_day_kotel (только для них!) SELECT max(state) as state1 FROM states WHERE entity_id = "sensor.money_day_kotel" and DATE_FORMAT(last_updated, "%Y%m%d") != DATE_FORMAT(CURDATE(), "%Y%m%d") GROUP BY DATE_FORMAT(last_updated, "%Y%m%d") ) as totals1
Получается в том запросе который я прислал он за сутки только брал все значения и делал среднее?
Нет! Что стало не понятно во фразе?: Вот тут написан подзапрос который вернет вам максимальные значения в разрезе каждого дня, для значения = sensor.money_day_kotel (только для них!)
График не могу отправить к сожалению, чтоб понятнее было. Запрещено до завтра. Там пилообразный график. От нуля до какого то значения. И так 8 дней. Помогите запрос составить чтобы он по каждому дню брал максимумы и усреднил их
/unrestrict@Gopnegbot
У вас есть задание. У вас есть данные. Возьмите пару строк за 3 дня. Посчитайте вручную какие данные должны получиться. Составьте запрос, чтобы ответы совпали. Пробуете его на основных данных.
Обсуждают сегодня