Скажите, если у меня есть модели:
class User(models.Model):
name = ...
dob = ...
class Event(models.Model):
user = models.ForeignKey(User, ...)
timestamp = models.DateTimeField()
И я хочу опрашивать всех пользователей и аннотировать как с количеством событий, так и с MAX of Events.timestamp
Я знаю, для подсчета я могу do:
Users.objects.all().annotate(event_count=models.Count('event_set'))
Но как мне сделать максимум для связанного поля набора запросов? Я хочу, чтобы это был один запрос, например:
SELECT Users. *, MAX (Events.timestamp), COUNT (Events) FROM Users JOIN События в Users.id = Events.user_id