Samenvatting :in deze tutorial leer je hoe je SQLite LIMIT . gebruikt clausule om het aantal rijen te beperken dat door een zoekopdracht wordt geretourneerd.
Inleiding tot SQLite LIMIT clausule
De LIMIT clausule is een optioneel onderdeel van de SELECT uitspraak. U gebruikt de LIMIT clausule om het aantal rijen te beperken dat door de query wordt geretourneerd.
Bijvoorbeeld een SELECT instructie kan een miljoen rijen retourneren. Als u echter alleen de eerste 10 rijen in de resultatenset nodig heeft, kunt u de LIMIT toevoegen clausule aan de SELECT statement om 10 rijen op te halen.
Het volgende illustreert de syntaxis van de LIMIT clausule.
SELECT
column_list
FROM
table
LIMIT row_count;Code language: SQL (Structured Query Language) (sql)
De row_count is een positief geheel getal dat het aantal geretourneerde rijen aangeeft.
Om bijvoorbeeld de eerste 10 rijen in de tracks . te krijgen tabel, gebruik je de volgende verklaring:
SELECT
trackId,
name
FROM
tracks
LIMIT 10;Code language: SQL (Structured Query Language) (sql) Probeer het
Als u de eerste 10 rijen wilt laten beginnen vanaf de 10e rij van de resultatenset, gebruikt u OFFSET zoekwoord als het volgende:
SELECT
column_list
FROM
table
LIMIT row_count OFFSET offset;Code language: SQL (Structured Query Language) (sql)
Of u kunt de volgende verkorte syntaxis van de LIMIT OFFSET . gebruiken clausule:
SELECT
column_list
FROM
table
LIMIT offset, row_count;Code language: SQL (Structured Query Language) (sql)
Om bijvoorbeeld 10 rijen te krijgen vanaf de 11 rij in de tracks tabel, gebruik je de volgende verklaring:
SELECT
trackId,
name
FROM
tracks
LIMIT 10 OFFSET 10;Code language: SQL (Structured Query Language) (sql) Probeer het
Je vindt vaak het gebruik van OFFSET in webapplicaties voor het pagineren van resultatensets.
SQLite LIMIT en ORDER BY clausule
Gebruik altijd de LIMIT clausule met de ORDER BY clausule. Omdat u een aantal rijen in een bepaalde volgorde wilt krijgen, niet in een niet-gespecificeerde volgorde.
De ORDER BY clausule verschijnt voor de LIMIT clausule in de SELECT uitspraak. SQLite sorteert de resultatenset voordat het aantal rijen wordt opgehaald dat is opgegeven in de LIMIT clausule.
SELECT
column_list
FROM
table
ORDER BY column_1
LIMIT row_count;Code language: SQL (Structured Query Language) (sql) Om bijvoorbeeld de top 10 van grootste nummers op grootte te krijgen, gebruikt u de volgende zoekopdracht:
SELECT
trackid,
name,
bytes
FROM
tracks
ORDER BY
bytes DESC
LIMIT 10;Code language: SQL (Structured Query Language) (sql) Probeer het
Om de 5 kortste tracks te krijgen, sorteert u de tracks op de lengte gespecificeerd in millisecondenkolom met behulp van ORDER BY clausule en verkrijg de eerste 5 rijen met behulp van LIMIT clausule.
SELECT
trackid,
name,
milliseconds
FROM
tracks
ORDER BY
milliseconds ASC
LIMIT 5;Code language: SQL (Structured Query Language) (sql) Probeer het
De n hoogste en laagste waarde krijgen
U kunt de ORDER BY . gebruiken en LIMIT clausules om de n rijen met de hoogste of laagste waarde te krijgen. U wilt bijvoorbeeld de op één na langste track, de op twee na kleinste track, enz. weten.
Om dit te doen, gebruikt u de volgende stappen:
- Gebruik eerst
ORDER BYom de resultatenset in oplopende volgorde te sorteren als u de n laagste waarde wilt krijgen, of aflopende volgorde als u de n hoogste waarde wilt krijgen. - Ten tweede, gebruik de
LIMIT OFFSETclausule om de n hoogste of de n laagste rij te krijgen.
De volgende instructie retourneert de op één na langste track in de tracks tafel.
SELECT
trackid,
name,
milliseconds
FROM
tracks
ORDER BY
milliseconds DESC
LIMIT 1 OFFSET 1;Code language: SQL (Structured Query Language) (sql) Probeer het
De volgende instructie krijgt de op twee na kleinste track op de tracks tafel.
SELECT
trackid,
name,
bytes
FROM
tracks
ORDER BY
bytes
LIMIT 1 OFFSET 2;Code language: SQL (Structured Query Language) (sql) Probeer het
In deze tutorial heb je geleerd hoe je SQLite LIMIT . gebruikt clausule om het aantal rijen te beperken dat door de query wordt geretourneerd.