1
集合体を持つ場合、Pythonメモリで計算することなく、クエリの値の平均を取得できますか?djangoの集合体の平均を計算する方法
from django.db.models import F, Sum, FloatField, Avg
Model.objects.filter(...)\
.values('id')\
.annotate(subtotal=Sum(...math here...), output_field=FloatField())\
.annotate(total=Avg(F('subtotal'))) #this line throws a FieldError
クエリでsubtotal
値のAvg
を取得する方法はありますか?これは私がAvg
を集計( "subtotal
")で計算することはできませんが、.annotate(...math here...)
操作がからModel
個のオブジェクトではないため、.values('id')
グループを置き換えることはできません。
多くのおかげで、素晴らしい仕事をした。 – Escher
私は同じ問題を抱えていますが、複数の(すでに)集約されたフィールドを平均化する必要があります。 'のようなものがあります。集計(合計=平均(F( 'subtotal_1')、F( '小計_2')、F( '小計_3')))'それは 'subtotal_1'が集計... ? [これは同様の質問です。](http://stackoverflow.com/questions/34911474/django-aggregation-sum-then-average) –