当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Django QuerySet.aggregate用法及代码示例


本文介绍 django.db.models.query.QuerySet.aggregate 的用法。

声明

aggregate(*args, **kwargs)

返回在 QuerySet 上计算的聚合值(平均值、总和等)的字典。 aggregate() 的每个参数都指定一个值,该值将包含在返回的字典中。

Django 提供的聚合函数在下面的Aggregation Functions 中说明。由于聚合也是查询表达式,您可以将聚合与其他聚合或值组合以创建复杂的聚合。

使用关键字参数指定的聚合将使用关键字作为注释的名称。匿名参数将根据聚合函数的名称和正在聚合的模型字段为它们生成一个名称。复杂聚合不能使用匿名参数,并且必须指定关键字参数作为别名。

例如,当您处理博客条目时,您可能想知道贡献了博客条目的作者数量:

>>> from django.db.models import Count
>>> q = Blog.objects.aggregate(Count('entry'))
{'entry__count': 16}

通过使用关键字参数来指定聚合函数,您可以控制返回的聚合值的名称:

>>> q = Blog.objects.aggregate(number_of_entries=Count('entry'))
{'number_of_entries': 16}

有关聚合的in-depth 讨论,请参阅关于聚合的主题指南。

相关用法


注:本文由纯净天空筛选整理自djangoproject.com大神的英文原创作品 django.db.models.query.QuerySet.aggregate。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。