В общем, проблема была решена как то так: avg = Item.objects.order_by().annotate( comment__count__avg=Cast( Func(F('comment'), function='COUNT'), output_field=FloatField() ) / Func( Func(F('id'), function="DISTINCT"), function='COUNT', output_field=FloatField() ) ).values('comment__count__avg') Item.objects.annotate(Count('comment')).filter(comment__count__gt=avg) Надеюсь, где то существует более простое решение, просто я его ещё не знаю🙄
Обсуждают сегодня