Zoeken…


Syntaxis

  • SELECT kolom_1 [, kolom_2]
    VANAF tabel_1
    BESTELLEN OP order_kolom
    LIMIT row_count [OFFSET row_offset]
  • SELECT kolom_1 [, kolom_2]
    VANAF tabel_1
    BESTELLEN OP order_kolom
    LIMIT [row_offset,] row_count

Opmerkingen

"Limiet" kan "Max aantal rijen in een tabel" betekenen.

"Offset" betekent kiezen uit row (niet te verwarren met primaire sleutelwaarde of veldwaarde)

Beperking en offset-relatie

Gezien de volgende users :

ID kaart gebruikersnaam
1 Gebruiker1
2 User2
3 User3
4 Gebruiker4
5 User5

Om het aantal rijen in de resultatenset van een SELECT query te beperken, kan de clausule LIMIT samen met een of twee positieve gehele getallen als argumenten worden gebruikt (inclusief nul).

LIMIT clausule met één argument

Wanneer één argument wordt gebruikt, wordt de resultatenset alleen beperkt tot het nummer dat op de volgende manier wordt opgegeven:

SELECT * FROM users ORDER BY id ASC LIMIT 2
ID kaart gebruikersnaam
1 Gebruiker1
2 User2

Als de waarde van het argument 0 , is de resultatenset leeg.

Merk ook op dat de ORDER BY clausule belangrijk kan zijn om de eerste rijen van de resultatenset op te geven die zullen worden gepresenteerd (bij bestelling in een andere kolom).

LIMIT clausule met twee argumenten

Wanneer twee argumenten worden gebruikt in een LIMIT clausule:

  • het eerste argument vertegenwoordigt de rij waaruit de rijen met resultaatsets zullen worden gepresenteerd - dit aantal wordt vaak als een offset genoemd , omdat het de rij voor de eerste rij van de beperkte resultaatset vertegenwoordigt. Hierdoor kan het argument 0 als waarde ontvangen en dus rekening houden met de eerste rij van de niet-beperkte resultaatset.
  • het tweede argument geeft het maximumaantal rijen aan dat moet worden geretourneerd in de resultatenset (vergelijkbaar met het voorbeeld van het ene argument).

Daarom is de vraag:

SELECT * FROM users ORDER BY id ASC LIMIT 2, 3

Presenteert de volgende resultatenset:

ID kaart gebruikersnaam
3 User3
4 Gebruiker4
5 User5

Merk op dat wanneer het offset- argument 0 , de resultatenset equivalent zal zijn aan een LIMIT clausule met één argument. Dit betekent dat de volgende 2 zoekopdrachten:

SELECT * FROM users ORDER BY id ASC LIMIT 0, 2

SELECT * FROM users ORDER BY id ASC LIMIT 2

Produceer dezelfde resultatenset:

ID kaart gebruikersnaam
1 Gebruiker1
2 User2

OFFSET trefwoord: alternatieve syntaxis

Een alternatieve syntaxis voor de clausule LIMIT met twee argumenten bestaat uit het gebruik van het sleutelwoord OFFSET na het eerste argument op de volgende manier:

SELECT * FROM users ORDER BY id ASC LIMIT 2 OFFSET 3

Deze zoekopdracht levert de volgende resultatenset op:

ID kaart gebruikersnaam
3 User3
4 Gebruiker4

Merk op dat in deze alternatieve syntaxis de argumenten van positie zijn veranderd:

  • het eerste argument vertegenwoordigt het aantal rijen dat moet worden geretourneerd in de resultatenset;

  • het tweede argument vertegenwoordigt de offset.



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow