Уведомления

Группа в Telegram: @pythonsu

#1 Июль 7, 2014 16:53:43

inoks
От: Russia
Зарегистрирован: 2012-12-11
Сообщения: 343
Репутация: +  35  -
Профиль   Адрес электронной почты  

Среднее по часам одним запросом

Вопрос магистрам запросов:
есть таблица:

date |hour |val
———————————–
01/06/2014 |8 |12
01/06/2014 |8 |21
01/06/2014 |8 |11
01/06/2014 |9 |14
01/06/2014 |9 |11
01/06/2014 |9 |11
01/06/2014 |9 |12
01/06/2014 |10 |3
01/06/2014 |10 |32
01/06/2014 |11 |12



01/07/2014 |19 |1
01/07/2014 |19 |15
01/07/2014 |20 |9

реально по ней посчитать среднее по часам одним запросом через ORM?

т.е. нужно просуммировать показания по часам за дни и взять среднее.

Или только raw?



Офлайн

#2 Июль 12, 2014 10:55:33

svas
От:
Зарегистрирован: 2010-01-27
Сообщения: 239
Репутация: +  9  -
Профиль   Отправить e-mail  

Среднее по часам одним запросом

Примерно так

Model.objects.values('date', 'hour').annotate(Avg('val'))



Офлайн

#3 Июль 14, 2014 17:01:22

inoks
От: Russia
Зарегистрирован: 2012-12-11
Сообщения: 343
Репутация: +  35  -
Профиль   Адрес электронной почты  

Среднее по часам одним запросом

Так получится среднее по дням, поидее нужно от этого набора (только Sum) дальше взять среднее по часам.

Офлайн

#4 Июль 17, 2014 11:04:03

svas
От:
Зарегистрирован: 2010-01-27
Сообщения: 239
Репутация: +  9  -
Профиль   Отправить e-mail  

Среднее по часам одним запросом

Тогда так

Model.objects.values('hour').annotate(Avg('val'))



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version