["python","django","django-queryset","django-orm"]
Django orm get latest for each group

I am using Django 1.6 with Mysql. I have these models: class Student(models.Model): username = models.CharField(max_length=200, unique = True) class Score(models.Model): student = models.ForeignKey(Student) date = models.DateTimeField() score = models.IntegerField() I want to get the latest score record for each student. I have tried: Score.objects.values('student').annotate(latest_date=Max('date')) and: Score.objects.values('student__username').annotate(latest_date=Max('date')) as described Django ORM - Get the latest record for the group but it did not help.
This should work on Django 1.2+ and MySQL: Score.objects.annotate( max_date=Max('student__score__date') ).filter( date=F('max_date') )