Команда 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 |