SQLite
 sql >> база данни >  >> RDS >> SQLite

Лимит на SQLite

Резюме :в този урок ще научите как да използвате SQLite LIMIT клауза за ограничаване на броя на редовете, върнати от заявка.

Въведение в SQLite LIMIT клауза

LIMIT Клаузата е незадължителна част от SELECT изявление. Използвате LIMIT клауза за ограничаване на броя на редовете, върнати от заявката.

Например SELECT изявлението може да върне един милион реда. Въпреки това, ако имате нужда само от първите 10 реда в набора от резултати, можете да добавите LIMIT клауза към SELECT изявление за извличане на 10 реда.

Следното илюстрира синтаксиса на LIMIT клауза.

SELECT
	column_list
FROM
	table
LIMIT row_count;Code language: SQL (Structured Query Language) (sql)

row_count е положително цяло число, което определя броя на върнатите редове.

Например, за да получите първите 10 реда в tracks таблица, използвате следния израз:

SELECT
	trackId,
	name
FROM
	tracks
LIMIT 10;Code language: SQL (Structured Query Language) (sql)

Опитайте го

Ако искате да получите първите 10 реда, започвайки от 10-ия ред на набора от резултати, използвайте OFFSET ключова дума, както следва:

SELECT
	column_list
FROM
	table
LIMIT row_count OFFSET offset;Code language: SQL (Structured Query Language) (sql)

Или можете да използвате следния съкратен синтаксис на LIMIT OFFSET клауза:

SELECT
	column_list
FROM
	table
LIMIT offset, row_count;Code language: SQL (Structured Query Language) (sql)

Например, за да получите 10 реда, започващи от 11 ред в tracks таблица, използвате следния израз:

SELECT
	trackId,
	name
FROM
	tracks
LIMIT 10 OFFSET 10;Code language: SQL (Structured Query Language) (sql)

Опитайте го

Често срещате употребите на OFFSET в уеб приложения за пагиниране на набори от резултати.

SQLite LIMIT и ORDER BY клауза

Винаги трябва да използвате LIMIT клауза с ORDER BY клауза. Защото искате да получите определен брой редове в определен ред, а не в неопределен ред.

ORDER BY клаузата се появява преди LIMIT клауза в SELECT изявление. SQLite сортира резултатния набор, преди да получи броя на редовете, посочени в LIMIT клауза.

SELECT
   column_list
FROM
   table
ORDER BY column_1
LIMIT row_count;Code language: SQL (Structured Query Language) (sql)

Например, за да получите първите 10 най-големи песни по размер, използвате следната заявка:

SELECT
	trackid,
	name,
	bytes
FROM
	tracks
ORDER BY
	bytes DESC
LIMIT 10;Code language: SQL (Structured Query Language) (sql)

Опитайте го

За да получите 5-те най-къси песни, сортирате песните по дължината, определена от колона милисекунди, като използвате ORDER BY клауза и вземете първите 5 реда с помощта на LIMIT клауза.

SELECT
	trackid,
	name,
	milliseconds
FROM
	tracks
ORDER BY
	milliseconds ASC
LIMIT 5;Code language: SQL (Structured Query Language) (sql)

Опитайте го

Получаване на n най-висока и най-ниска стойност

Можете да използвате ORDER BY и LIMIT клаузи, за да получите n реда с най-висока или най-ниска стойност. Например, може да искате да знаете втората най-дълга песен, третата най-малка песен и т.н.

За да направите това, използвайте следните стъпки:

  1. Първо, използвайте ORDER BY за да сортирате резултатния набор във възходящ ред, в случай че искате да получите най-ниската стойност n, или низходящ, ако искате да получите най-високата стойност n.
  2. Второ, използвайте LIMIT OFFSET клауза, за да получите n най-висок или n най-нисък ред.

Следващият оператор връща втория най-дълъг запис в tracks таблица.

SELECT
	trackid,
	name,
	milliseconds
FROM
	tracks
ORDER BY
	milliseconds DESC
LIMIT 1 OFFSET 1;Code language: SQL (Structured Query Language) (sql)

Опитайте го

Следното изявление получава третата най-малка песен в tracks таблица.

SELECT
	trackid,
	name,
	bytes
FROM
	tracks
ORDER BY
	bytes
LIMIT 1 OFFSET 2;Code language: SQL (Structured Query Language) (sql)

Опитайте го

В този урок научихте как да използвате SQLite LIMIT клауза за ограничаване на броя на редовете, върнати от заявката.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLite NOT NULL ограничение

  2. Съюз на SQLite

  3. Как да настроите таймера да извиква функция на всеки n минути?

  4. 5 начина да стартирате SQL скрипт от файл в SQLite

  5. Тестване на модули за база данни на Android SQLite