ホームページ > バックエンド開発 > Python チュートリアル > Django で集計を使用して Group By クエリを実行するにはどうすればよいですか?

Django で集計を使用して Group By クエリを実行するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-06 02:51:11
オリジナル
504 人が閲覧しました

How Can I Perform Group By Queries in Django Using Aggregation?

Django のグループ化クエリ

Django のクエリセット API にパッチを適用しなくても、ORM の集計を使用してグループ化機能を実現できます

値とカウントを使用した集計

from django.db.models import Count
result = (Members.objects
    .values('designation')
    .annotate(dcount=Count('designation'))
    .order_by()
)
ログイン後にコピー
特定のフィールドで結果をグループ化し、各グループの出現回数をカウントするには、次の構文を使用します。

これは、指定フィールドによってグループ化された結果を含むクエリセットを返します。各指定の数。出力は辞書のリストとなり、それぞれに指定と dcount (指定の数) が含まれます。

結果に複数のフィールドを含める

    .values('designation', 'first_name', 'last_name')
ログイン後にコピー
複数のフィールドを含めるには結果では、それらを引数としてvalues()に追加するだけです。 function:

    リファレンス

  • [Django ドキュメント:values()](https://docs.djangoproject.com/en/ Stable/ref/models/querysets/#values)
  • [Djangoドキュメント: annotate()](https://docs.djangoproject.com/en/stable/ref/models/querysets/#annotate)
  • [Django ドキュメント: Count](https://docs.djangoproject .com/en/stable/ref/models/lookups/#count)
  • [Django ドキュメント:集約](https://docs.djangoproject.com/en/stable/topics/db/aggregation/)
[Django ドキュメント: デフォルトの順序付けまたはorder_by()](https://docs.djangoproject.com/en/stable/topics/db/aggregation/#interaction-with-default-ordering-or-orderby)

以上がDjango で集計を使用して Group By クエリを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート