-2

I would like to do an average on a subquery with group by, how should I do this in Django without using raw SQL?

See SQL example:

SELECT AVG(calories) AS AVG_DAILY_CALORIES
FROM (
SELECT date, SUM(calories)
FROM products_eaten
GROUP BY date ) daily_calories

I already have the subquery (QuerySet) with values and annotate. Adding aggregate after this fails.

Thanks in advance!

Eric Muijs
  • 29
  • 6

1 Answers1

0

The issue was solved using an aggregrate:

.aggegrate(avg_daily_calories=Average('calories')/Count('date', distinct=True))
Yamuk
  • 750
  • 8
  • 27
Eric Muijs
  • 29
  • 6