LIMIT
LIMIT может быть использован для ограничения количества строк, возвращаемых оператором SELECT. LIMIT принимает один или два числовых аргумента, которые оба должны быть неотрицательны целочисленные константы (except when using prepared statements).
https://dev.mysql.com/doc/refman/8.0/en/limit-optimization.html
Получить 10 строк, начиная с 6-й
Из двух аргументов, первый аргумент определяет смещение от первой строки, второй - определяет максимальное количество возвращаемых строк. Смещение от начального ряда равно 0.
SELECT * FROM tbl LIMIT 5, 10; # возвратит строки 6-15Чтобы получить все строки от определенного смещения до конца результирующего набора, вы можете использовать некоторое большое число для второго параметра. Это выражение извлекает все строки от 96-й до последней:
SELECT * FROM tbl LIMIT 95, 18446744073709551615;Получить первые n строк
С одним аргументом, значение определяет количество возвращаемых строк от начала результирующего набора:
SELECT * FROM tbl LIMIT n;Другими словами, LIMIT n эквивалентно LIMIT 0, n
mysql> SELECT * FROM city LIMIT 5;
+-----+-------------------------------+---------------------+
| cid | cname | dateup |
+-----+-------------------------------+---------------------+
| 1 | Киев | 2014-09-28 03:18:53 |
| 2 | Харьков | 2014-09-28 03:18:53 |
| 3 | Днепр | 2014-09-28 03:18:53 |
| 4 | Львов | 2014-09-28 03:18:53 |
| 5 | Одесса | 2014-09-28 03:18:53 |
+-----+-------------------------------+---------------------+
5 rows in set (0.03 sec)Вывести последние n cтрок
Если таблица tbl проиндексирована по полю id от меньшего к большему (ASC), то
Еще немного про это
Как выбрать произвольные записи из таблицы
⚠️ Не спешите применять такой запрос на больших данных! см. здесь
LIMIT з кінця таблиці
Робимо підзапит, де вибираємо дані у зворотньому порядку з необхідним лімітом. Потім виводимо дані цієї виборки у необхідному порядку.
Часто порядок не має значення, а треба лише подивитися останні додані дані. Тоді достатньо такого простого запиту:
Last updated