Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 9, 2010 09:04:34

tier
От:
Зарегистрирован: 2007-11-25
Сообщения: 30
Репутация: +  0  -
Профиль   Отправить e-mail  

хитрое агрегатное выражение

Добрый день.
Никак не могу найти решения. Подскажите, кто знает, пожалуйста.
В таблице имеется список операций за месяц. Модель для операции:

class Operation(models.Model):
check_time = models.DateTimeField("Дата проверки")
success = models.BooleanField("Результат проверки", default=True)
Нужно посчитать количество неудачных операций за каждый день.
Считаем просто количество операций по дням:
Operation.objects.extra({'check_date' :"date(check_time)"}).values('check_date').annotate(oper_count=Count('id'))
Добавляем фильтр, чтобы считать только неудачные операции:
Operation.objects.extra({'check_date' :"date(check_time)"}).values('check_date').annotate(oper_count=Count('id')).filter(success=False)
Но, тут из списка исчезают дни, в которые не было неудачных операций (что вполне логично). А мне нужно выводить *все* дни, а у тех, когда не было неудачных операций - показывать их количество 0.
Как это можно сделать?
Спасибо



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version