У меня есть простая модель, как это:Джанго: Группа по дате (день, месяц, год)
class Order(models.Model):
created = model.DateTimeField(auto_now_add=True)
total = models.IntegerField() # monetary value
И я хочу, чтобы вывести разбивку месяца за месяцем:
- Сколько продаж были в течение месяца (
COUNT
) - Объединенное значение (
SUM
)
Я m не уверен, что лучший способ атаковать это. Я видел некоторые довольно страшные лишние запросы, но мой простой ум говорит мне, что мне может быть лучше просто перебирать числа, начиная с произвольного начала года/месяца и подсчета до тех пор, пока я не дойду до текущего месяца, выбрасывая простые фильтрации запросов за этот месяц. Больше работы с базами данных - меньше стресса разработчиков!
Что для вас больше всего подходит? Есть ли хороший способ, которым я могу отменить быстрый стол данных? Или мой грязный метод, вероятно, лучшая идея?
Я использую Django 1.3. Не уверен, что недавно они добавили еще один способ: GROUP_BY
.
Это дубликат http://stackoverflow.com/questions/8596856/django-get-distinct-dates-from-timestamp и http://stackoverflow.com/questions/1236865/grouping-dates -in-django/8597940 # 8597940 – tback