Как найти значение avg для вычисляемого поля, сгруппированного по другому полю?
Предположим, у нас есть модель, которая содержит три поля:
class MyModel(models.Model):
section = models.CharField()
num_1 = models.IntegerField()
num_2 = models.IntegerField()
Я хочу повторить следующее поведение sql, используяdjango ORM:
SELECT section, AVG(relation) AS relation_avg
FROM (SELECT *, (num_1 / num_2) AS "relation" FROM my_model)
GROUP BY section
, который в основном вычисляет среднее значение вычисляемого поля, сгруппированного по полю раздела.