當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。