查詢 Django 模型時,可能會遇到需要執行 group by 操作的場景。嘗試像在 SQL 中那樣使用 .group_by() 會導致錯誤。
Django 提供了允許您執行複雜查詢的聚合方法,而不是使用 .group_by()涉及分組。具體來說,Count 對於計算特定欄位的出現次數非常有用。
要依指定將結果分組並計算出現次數,您可以使用下列程式碼:
from django.db.models import Count result = (Members.objects .values('designation') .annotate(dcount=Count('designation')) .order_by() )
此查詢類似下列SQL 語句:
SELECT designation, COUNT(designation) AS dcount FROM members GROUP BY designation
Django查詢的輸出將格式為:
[{'designation': 'Salesman', 'dcount': 2}, {'designation': 'Manager', 'dcount': 2}]
以上是如何在 Django 中執行 Group By 查詢?的詳細內容。更多資訊請關注PHP中文網其他相關文章!