Beim Abfragen eines Django-Modells kann es vorkommen, dass Sie eine Gruppierung nach-Operation durchführen müssen . Der Versuch, .group_by() wie in SQL zu verwenden, führt zu einem Fehler.
Anstelle der Verwendung von .group_by() bietet Django Aggregationsmethoden, mit denen Sie komplexe Abfragen durchführen können Einbeziehung von Gruppierungen. Count eignet sich insbesondere zum Zählen der Vorkommen eines bestimmten Felds.
Um die Ergebnisse nach Bezeichnung zu gruppieren und die Vorkommen zu zählen, würden Sie den folgenden Code verwenden:
from django.db.models import Count result = (Members.objects .values('designation') .annotate(dcount=Count('designation')) .order_by() )
Diese Abfrage ähnelt der folgenden SQL-Anweisung:
SELECT designation, COUNT(designation) AS dcount FROM members GROUP BY designation
Die Ausgabe der Django-Abfrage wäre in Form:
[{'designation': 'Salesman', 'dcount': 2}, {'designation': 'Manager', 'dcount': 2}]
Das obige ist der detaillierte Inhalt vonWie führe ich Gruppierungsabfragen in Django durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!