У меня есть следующая структура с примерами данных:
id season_id title
1 1 Intro
2 1 Second part
3 1 Third part
4 4 Other intro
5 4 Other second part
(не спрашивайте почему), где season_id всегда указывает на идентификатор первого эпизода сезона ...
Что я хочу, чтобы получить следующее:
1 1 Intro
4 4 Other intro
которые являются первыми эпизодами для сезона, технически говоря - все записи с самым низким season_eid
для и я использую следующий запрос, чтобы получить их идентификаторы:
Movie.objects.filter(category_type = 2).values('season_eid').annotate(models.Min('season_eid'))
и имея идентификатор, я могу получить все данные для объектов, используя конструкцию django orm __in.
Могу ли я сделать группировку / аннотацию и взять все поля / значения, используя только один запрос? values + annotate дает мне только список словарей, но вместо этого я хотел бы получить правильные объекты (самое низкое значение / мин сезона_eid) с остальными полями.