, у вас есть следующие модели:Джанго Аннотируйте значение со всеми полями
class Student(models.Model):
student_no = models.IntegerField(primary_key=True)
GPA = models.DecimalField(max_digits=65535, decimal_places=65535)
year_of = days_on_market = models.IntegerField()
и вы хотите связать самый высокий средний балл со все студентами. Как вы это делаете? Я пробовал следующее:
Student.objects.annotate(max_GPA = Max('GPA')).aggregate(Max('GPA'))
Согласно the documentation. Но это не связывает максимальное количество GPA с каждым учеником. Это связано только с максимальным GPA для записи, которая совпадает с GPA этой записи с записью, которая так же бесполезна, как и получается. Он также возвращает словарь {'GPA__max': 4.3}, но это не намерение кода.
Я посмотрел here, но это решение делает то же самое, что и другое, а именно сопоставление максимального ГПД записи (а не максимального ГПД всех записей), что в любом случае совпадает с GPA.
Фактически, я хочу, чтобы 4.3 был связан с каждым учеником.
Любое творческое решение?
Ну, это кажется странным, что вы хотели бы это ... кажущийся как максимальный GPa не имеет ничего общего с каждым другим учеником ... было бы возможно просто иметь агрегированный запрос и передать результат всем, что ему нужно? –