Я пытаюсь вычислить среднее значение поля по различным подмножествам набора запросов.Агрегация нескольких моделей - Django
Player.objects.order_by('-score').filter(sex='male').aggregate(Avg('level'))
Это прекрасно работает!
Но ... если я пытаюсь вычислить его для 50 лучших игроков это не работает.
Player.objects.order_by('-score').filter(sex='male')[:50].aggregate(Avg('level'))
Этот последний возвращает тот же результат, что и запрос над ним, что неверно.
Что я делаю неправильно?
Помощь была бы очень признательна!
Вы хотите получить средний уровень для «топ-50 игроков мужского пола» или «мужчин-игроков в топ-50»? Ваш код предлагает «топ-50 игроков-мужчин», но в вашем описании говорится только «топ-50 игроков». – istruble