導入聚合函數方法
from django.db.models import Sum, Avg, Max, Min
-
聚合查詢
查詢所有書籍的數量models.Books.objects.filter().aggregate(Sum('id'))
上面的方法執行返回的結果是一個字典,其中sum作爲鍵,查詢結果作爲值
- 聚合查詢配合分組
查詢所有類型爲小說的書籍數量models.Books.objects.filter(type = '小說').values('type').annotate(sum = Sum('id'))
上面的方法執行返回的結果是一個QuerySet類型的列表,values作爲分組的條件,annotate則是聚合函數的執行方法