SQLite - klauzula LIMIT

SQLite LIMIT klauzula służy do ograniczenia ilości danych zwracanych przez instrukcję SELECT.

Składnia

Poniżej przedstawiono podstawową składnię instrukcji SELECT z klauzulą ​​LIMIT.

SELECT column1, column2, columnN 
FROM table_name
LIMIT [no of rows]

Poniżej przedstawiono składnię klauzuli LIMIT, gdy jest ona używana razem z klauzulą ​​OFFSET.

SELECT column1, column2, columnN 
FROM table_name
LIMIT [no of rows] OFFSET [row num]

Silnik SQLite zwróci wiersze zaczynające się od następnego wiersza do danego PRZESUNIĘCIA, jak pokazano poniżej w ostatnim przykładzie.

Przykład

Rozważ tabelę COMPANY z następującymi rekordami -

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

Poniżej znajduje się przykład, który ogranicza wiersz w tabeli w zależności od liczby wierszy, które chcesz pobrać z tabeli.

sqlite> SELECT * FROM COMPANY LIMIT 6;

Spowoduje to następujący wynik.

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0

Jednak w niektórych sytuacjach może być konieczne pobranie zestawu rekordów z określonego przesunięcia. Poniżej przedstawiono przykład, który odbiera 3 rejestrów wychodząc z 3 -ciej pozycji.

sqlite> SELECT * FROM COMPANY LIMIT 3 OFFSET 2;

Spowoduje to następujący wynik.

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0