В Django для составления запроса с добавлением среднего значения в queryset
вы можете использовать функции агрегации. Самая распространенная функция агрегации в Django, которую вы можете использовать для нахождения среднего значения, называется Avg()
.
Для добавления среднего значения в queryset
вам необходимо выполнить следующие шаги:
- Импортируйте модуль
django.db.models
:
from django.db.models import Avg
- Используйте функцию
annotate()
для добавления агрегированного значения вqueryset
. В аргументе функцииAvg()
укажите поле, для которого вы хотите найти среднее значение:
queryset = MyModel.objects.annotate(avg_rating=Avg('rating'))
- В результате
queryset
будет содержать новое полеavg_rating
, в котором будет храниться среднее значение для каждого объектаMyModel
. Теперь вы можете получить доступ к среднему значению для каждого объекта, просто обращаясь к полюavg_rating
:
for obj in queryset: print(obj.avg_rating)
Таким образом, вы можете легко составить запрос в Django для добавления среднего значения в queryset
с использованием функции Avg()
.