一尘不染

Django:通过查询计算列值的总和

django

我有一个模特

class ItemPrice( models.Model ):
     price = models.DecimalField ( max_digits = 8, decimal_places=2 )
     ....

我试图这样做来计算此查询price集中的总和:

items = ItemPrice.objects.all().annotate(Sum('price'))

此查询有什么问题?还是有其他方法可以计算price列总和?

我知道这可以通过在queryset上使用for循环来完成,但是我需要一个优雅的解决方案。


阅读 1335

收藏
2020-04-02

共1个答案

一尘不染

你可能正在寻找 aggregate

from django.db.models import Sum

ItemPrice.objects.aggregate(Sum('price'))
2020-04-02