Django: запись с максимальным элементом

У меня есть таблица базы данных с именем «студент», в которой есть один столбец с именем «оценки». Я хочу студенческую запись с самыми высокими оценками по математике. Для этого есть простое решение с использованием order_by()[0]:

Student.objects.filter(subject='Maths').order_by('-marks')[0]

Но это сортирует таблицу, а затем выбирает первую запись. Если моя таблица огромна, это избыточно, так как мне нужна только максимальная запись. Есть ли способ просто получить наибольшее значение без сортировки?

Мне нужен весь объект, а не только максимальное значение.

Спасибо Ануж

14
задан Mariusz Jamro 23 March 2012 в 11:18
поделиться