Команда LIMIT задает ограничение на количество записей, выбираемых из базы данных.

Данная команда может использоваться совместно с командой SELECT, командой DELETE, и командой UPDATE.

См. также команду order, с помощью которой можно отсортировать выбранные записи.

Синтаксис

SELECT * FROM имя_таблицы WHERE условие LIMIT количество_записей
SELECT * FROM имя_таблицы WHERE условие LIMIT с_какой_записи, количество_записей
SELECT * FROM имя_таблицы WHERE условие ORDER BY по_чем_сортировать LIMIT число, число
DELETE FROM имя_таблицы WHERE условие LIMIT количество_записей
UPDATE имя_таблицы SET ... WHERE условие LIMIT количество_записей

Примеры

Все примеры будут по этой таблице workers, если не сказано иное:

id
айди
name
имя
age
возраст
salary
зарплата
1 Дима 23 400
2 Петя 25 500
3 Вася 23 500
4 Коля 30 1000
5 Иван 27 500
6 Кирилл 28 1000

Пример

Давайте выберем первые 3 записи:

SELECT * FROM workers WHERE id>0 LIMIT 3

SQL запрос выберет следующие строки:

id
айди
name
имя
age
возраст
salary
зарплата
1 Дима 23 400
2 Петя 25 500
3 Вася 23 500

Пример

Давайте выберем 3 записи, начиная со второй (первая имеет номер 0, а вторая - номер 1):

SELECT * FROM workers WHERE id>0 LIMIT 1, 3

SQL запрос выберет следующие строки:

id
айди
name
имя
age
возраст
salary
зарплата
2 Петя 25 500
3 Вася 23 500
4 Коля 30 1000

Пример

Давайте выберем последние 3 записи.

Для этого отсортируем их с помощью ORDER BY по убыванию id и возьмем 3 записи с помощью LIMIT

Они и будут искомыми последними записями, так как LIMIT сработает после сортировки и будет браться по уже отсортированной таблице.

При этом записи будут идти в обратном порядке - с 6-той по 4-тую (так как мы их отсортировали):

SELECT * FROM workers WHERE id>0 ORDER BY id LIMIT 3

SQL запрос выберет следующие строки:

id
айди
name
имя
age
возраст
salary
зарплата
6 Кирилл 28 1000
5 Иван 27 500
4 Коля 30 1000

Пример

Давайте выберем последнюю запись в таблице.

Для этого отсортируем их с помощью ORDER BY по убыванию id и возьмем первую запись с помощью LIMIT:

SELECT * FROM workers WHERE id>0 ORDER BY id LIMIT 3

SQL запрос выберет следующие строки:

id
айди
name
имя
age
возраст
salary
зарплата
6 Кирилл 28 1000