Django中SQL等价的groupby



我的表collection有以下列

  • collection_id(主键)
  • 总量(IntegerField)
  • 日期(DateField)

我需要在Django视图中获得每天收集的总金额。必须等同于下面的SQL查询。

select sum(amount) from collection group by date

您需要使用values()annotate()

Model.objects.values('date').annotate(sum=Sum('amount')).values_list('sum', flat=True)

from docs

annotate()和values()子句顺序

如果values()子句在annotate()之前,则使用values()子句描述的分组计算注释。

相关内容

  • 没有找到相关文章

最新更新