Maison >développement back-end >Tutoriel Python >Comment puis-je effectuer des requêtes groupées dans Django à l'aide de l'agrégation ?
Sans patcher l'API de jeu de requêtes de Django, vous pouvez réaliser un regroupement par fonctionnalité à l'aide des fonctionnalités d'agrégation de l'ORM.
Pour regrouper les résultats par champ spécifique et compter les occurrences de chaque groupe, utilisez la syntaxe suivante :
from django.db.models import Count result = (Members.objects .values('designation') .annotate(dcount=Count('designation')) .order_by() )
Cela renverra un ensemble de requêtes avec les résultats regroupés par le champ de désignation, ainsi que le nombre de chaque désignation. Le résultat sera une liste de dictionnaires, chacun contenant la désignation et le dcount (nombre de désignations).
Pour inclure plusieurs champs dans les résultats, ajoutez-les simplement comme arguments aux valeurs() fonction :
.values('designation', 'first_name', 'last_name')
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!