所以我有一个像
这样的查询SELECT sum(project_shares) as shares, count(*) as count FROM vv_projects
django 2.0中是否有类似下面的语法
Projects.objects.aggregrate(Sum('project_shares'),Count('*'))
并输出
{'project_shares_sum':9,'count':8}
在django 2.0中使用聚合外键引用,所以我很困惑。 如果没有,我已添加另一个orm查询行来获取计数。
答案 0 :(得分:1)
您提供的语法应该有效。您所要做的就是将Count('*')
替换为Count('id')
或Count('pk')
来计算所有条目。
Projects.objects.aggregrate(Sum('project_shares'), Count('pk'))
输出将如下:
{'project_shares__sum':9,'pk__count':8}