Django聚合查询及分组查询

导入聚合函数方法

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则是聚合函数的执行方法

你可能感兴趣的:(Django聚合查询及分组查询)