Django モデルをクエリするとき、グループ化操作を実行する必要があるシナリオが発生する場合があります。 。 SQL と同じように .group_by() を使用しようとすると、エラーが発生します。
.group_by() を使用する代わりに、Django には複雑なクエリを実行できる集計メソッドが用意されています。グループ化を伴う。具体的には、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 中国語 Web サイトの他の関連記事を参照してください。