15. Как группировать записи в Django ORM?

Группировка записей в Django ORM может быть выполнена с помощью функций агрегирования, таких как Max, Min, Avg, Sum. Запросы Django помогают создавать, извлекать, обновлять и удалять объекты. Но иногда нам нужно получить агрегированные значения из объектов. Мы можем получить их на примере, показанном ниже:

>>> from django.db.models import Avg, Max, Min, Sum, Count
>>> User.objects.all().aggregate(Avg('id'))
{'id__avg': 7.571428571428571}
>>> User.objects.all().aggregate(Max('id'))
{'id__max': 15}
>>> User.objects.all().aggregate(Min('id'))
{'id__min': 1}
>>> User.objects.all().aggregate(Sum('id'))
{'id__sum': 106}
Вернуться на верх