Django: Calculate the Sum of the column values through query


I have a model

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

I tried this to calculate the sum of price in this queryset:

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

what"s wrong in this query? or is there any other way to calculate the Sum of price column?

I know this can be done by using for loop on queryset but i need an elegant solution.


Answer rating: 235

You"re probably looking for aggregate

from django.db.models import Sum

# returns {"price__sum": 1000} for example

Get Solution for free from DataCamp guru