Я пытаюсь сделать в Django ORM следующее:
- Группировать по пользователю
- Суммировать прибыль
- Аннотировать с последним статусомэтот пользователь
Мой набор запросов выглядит следующим образом:
Sales.objects.values('user').annotate(
profits = Sum('profit'),
status = Subquery(Status.objects.filter(username=OuterRef('user')).order_by('-date').values('status')[:1]
).order_by()
Если я проверю SQL-запрос этого набора запросов, я вижу, что поле status
добавляется в group by
пункт.Но этот запрос не может быть выполнен.Как я могу запретить Django добавить это в предложение group by
?Потому что остальная часть запроса работает нормально.