2024-09-28 22:07:02 发布
网友
我正在尝试获取具有以下条件的相关对象的计数:
Item.objects.annotate(count_subitems=Count('subitems'))
子项有一个created_at列,我需要使用它来筛选计数(大于日期、小于日期或介于日期之间)。在
我怎么能用Django ORM做到这一点?在
谢谢。在
我想,你要找的是:
from django.db.models import Count, Sum, Case, When, IntegerField Item.objects.annotate( count_subitems=Sum( Case(When(subitems__created_at__lte=datetime.now(), then=1)), output_field=IntegerField() ) )
你可以这样做
Item.objects.filter(subitems__created_at__lte=datetime.now()).annotate(count_subitems=Count('subitems'))
我想,你要找的是:
你可以这样做
相关问题 更多 >
编程相关推荐