Встречается на собеседованиях • сегодня

Как ограничить количественно выборку с помощью метода QuerySet

Для ограничения количества записей в QuerySet можно использовать методы [:n] (срез) или all()[:n]. Также есть метод iterator(), но он не ограничивает количество, а оптимизирует итерацию.

Пример с срезом:

python
# Получить первые 5 записей
limited_queryset = MyModel.objects.all()[:5]

Метод QuerySet ленивый, поэтому срез не выполняет запрос сразу. SQL добавит LIMIT:

sql
SELECT * FROM myapp_mymodel LIMIT 5;

Важно: отрицательные срезы ([-5:]) не поддерживаются. Для этого используйте комбинацию с order_by():

python
last_five = MyModel.objects.order_by('-id')[:5]
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы