Ограничение выборки, оператор LIMIT

Оператор LIMIT позволяет извлечь определённый диапазон записей из одной или нескольких таблиц.

Общая структура запроса с оператором LIMIT

Синтаксис с запятой:

MySQL 8.1
SELECT поля_выборки
FROM список_таблиц
LIMIT [количество_пропущенных_записей,] количество_записей_для_вывода;

Синтаксис с OFFSET:

MySQL 8.1
SELECT поля_выборки
FROM список_таблиц
LIMIT количество_записей_для_вывода [OFFSET количество_пропущенных_записей];

Если не указать количество пропущенных записей, то их отсчёт будет вестись с начала таблицы.

MySQL 8.1
SELECT поля_выборки
FROM список_таблиц
LIMIT количество_записей_для_вывода [OFFSET количество_пропущенных_записей];

Если не указать OFFSET, то отсчёт будет вестись с начала таблицы.

Пример использования

Возьмём таблицу Company:

idname
1Don_avia
2Aeroflot
3Dale_avia
4air_France
5British_AW

Для того, чтобы вывести строки с 3 по 5, нужно использовать такой запрос:

MySQL 8.1
SELECT * FROM Company LIMIT 2, 3;

Или, что то же самое:

MySQL 8.1
SELECT * FROM Company LIMIT 3 OFFSET 2;
MySQL 8.1
SELECT * FROM Company LIMIT 3 OFFSET 2;

В результате запроса вернётся следующая выборка:

idname
3Dale_avia
4air_France
5British_AW

В данном запросе происходит пропуск первых двух строк таблицы (1, 2), после чего выводятся следующие три записи (3, 4, 5).

А теперь попробуйте сами ⚡️

MySQL 8.1
SELECT * FROM Company
LIMIT 3 OFFSET 2
Количество пропущенных записей
Количество записей для вывода
idname
11Don_avia
22Aeroflot
33Dale_avia
44air_France
55British_AW
Выделите строки таблицы, чтобы увидеть, как меняется запрос ⚡