Django:从表group_by status中选择状态,计数(状态);

问题描述 投票:0回答:2

我知道由于某种原因,Django中没有group_by。但是,我需要获取每种可能状态下的项目数。可以通过一个非常简单的查询来完成:

select status, count(status) from table group_by status;

同时,在我们的项目中,我们尝试在Django ORM中做尽可能多的事情,到目前为止,除了某些迁移之外,从未在任何地方使用原始SQL。

在Django ORM中有没有做到这一点而又没有重复的方法?

django django-orm
2个回答
0
投票

您可以这样尝试(使用annotation):

annotation

0
投票

您可以使用from django.db.models import Count YourModel.objects.values('status').annotate(status_count=Count('status')) 对查询集进行分组。

values()

将返回values()

© www.soinside.com 2019 - 2024. All rights reserved.