Вопрос проверяет базовое умение писать SQL-запросы с сортировкой и ограничением выборки.
Для выборки с сортировкой и ограничением используют ORDER BY и LIMIT. Сначала задается сортировка, затем ограничение числа строк. При необходимости добавляют OFFSET для пагинации. Такой запрос часто используется при построении списков и страниц результатов.
Запрос с сортировкой и ограничением строится из нескольких частей.
SELECT id, name, created_at
FROM users
ORDER BY created_at DESC
LIMIT 10;
Этот запрос:
выбирает записи
сортирует по дате
возвращает только 10 строк
SELECT id, name
FROM users
ORDER BY id
LIMIT 10 OFFSET 20;
Это означает:
отсортировать записи
пропустить первые 20
вернуть следующие 10
При написании таких запросов:
поле сортировки должно быть индексировано
LIMIT желательно использовать вместе с ORDER BY
большие OFFSET ухудшают производительность
Например, список последних заказов:
SELECT *
FROM orders
ORDER BY created_at DESC
LIMIT 20;
Запрос с сортировкой и ограничением строится с помощью ORDER BY и LIMIT, а производительность во многом зависит от наличия индексов и объема данных.