Selecteer de top 10 rijen in SQL

Selecteer De Top 10 Rijen In Sql



Wanneer we in een SQL-database werken, kunnen we gevallen tegenkomen waarin we een specifieke subset van rijen uit een bepaalde tabel moeten ophalen. Hierdoor kunnen we de bronnen beperken die nodig zijn om de waarden uit de tabel op te halen.

Gelukkig hebben we in SQL toegang tot de LIMIT-clausule waarmee we het aantal rijen kunnen bepalen dat binnen een bepaalde resultatenset wordt geretourneerd. Deze functie is erg handig als we te maken hebben met een grote dataset en niet de hele rij nodig hebben, maar in plaats daarvan een subset ervan. Dit kan zijn om de lay-out van de gegevens of de presentatie te krijgen.

In deze zelfstudie leren we hoe we de LIMIT-clausule in SQL-databases kunnen gebruiken en ermee kunnen werken om het aantal rijen te specificeren dat we uit de database willen ophalen.







Vereisten:

Voordat we dieper ingaan op de werking en het gebruik van de LIMIT-clausule in SQL, bespreken we enkele basisvereisten voor deze zelfstudie.



Om dit bericht te volgen, heb je het volgende nodig:



  1. MySQL 8.0 en hoger werkt met MySQL 5
  2. Toegang tot de Sakila-voorbeelddatabase
  3. Machtigingen voor het opvragen van de rijen uit de doeldatabase (leestoegang)

Als aan de gegeven vereisten is voldaan, kunnen we doorgaan met deze tutorial.





SQL-LIMIET

In SQL stelt de LIMIT-clausule ons in staat het aantal rijen te beperken dat wordt geretourneerd door een bepaalde SQL-query. In een select-instructie kunnen we er bijvoorbeeld voor kiezen om alleen de eerste 10 rijen te bekijken, in plaats van alle rijen uit de tabel terug te geven, die meer dan 1000 records kunnen bevatten.

Hieronder ziet u de basissyntaxis van de LIMIT-clausule in SQL:



SELECTEER col1, col2, ...

VAN tbl_naam

LIMIT aantal_rijen;

In dit voorbeeld gebruiken we de LIMIT-clausule in combinatie met de SELECT-instructie.

Volgens de gegeven syntaxis vertegenwoordigt de “tbl_name” de naam van de tabel waaruit we de gegevens willen ophalen.

Met “num_rows” kunnen we het maximale aantal rijen specificeren dat in de resultatenset wordt geretourneerd.

Voorbeeld 1: Beperk het aantal rijen

De meest voorkomende en fundamentele rol van de LIMIT-clausule is het instellen van het maximale aantal rijen dat in de resultatenset is opgenomen.

Stel dat we de “film”-tabel uit de Sakila-voorbeelddatabase willen gebruiken. Omdat we echter niet alle bijbehorende rijen willen ophalen, kunnen we de eerste 10 rijen selecteren, zoals weergegeven in de volgende voorbeeldclausule:

SELECTEER * UIT film

BEGRENZING 10 ;

Zodra we de gegeven query hebben uitgevoerd, zouden we de volgende uitvoer moeten krijgen:

  Een screenshot van een computer Beschrijving automatisch gegenereerd

In dit voorbeeld gebruiken we de LIMIT-clausule om de resultaatset te beperken tot 10 rijen. Hiermee worden de eerste 10 rijen uit het resultaat opgehaald.

Voorbeeld 2: Gebruik van de OFFSET-waarde

In sommige gevallen willen we misschien een specifiek aantal rijen overslaan of weglaten. Stel dat we bijvoorbeeld slechts vijf elementen willen ophalen, maar we willen beginnen op positie 20. We kunnen de OFFSET-parameter gebruiken waarmee we de LIMIT-clausule kunnen vertellen op welke positie we willen beginnen.

Dit is met name handig wanneer u de paginering in een grote gegevensset moet implementeren, zoals weergegeven in het volgende voorbeeld:

SELECT film_id, titel, release_jaar, `lengte` VAN film

BEGRENZING 10 OFFSET twintig ;;

Dit zou 10 rijen moeten opleveren, beginnend vanaf positie 20, als volgt:

Zoals je aan het gegeven resultaat kunt zien, begint de start “film_id” op positie 21 en gaat door naar positie 30.

Voorbeeld 3: Gebruik van de Order BY-clausule

Een ander veelgebruikt gebruik van de LIMIT-clausule is in combinatie met de ORDER BY-clausule. Hierdoor kunnen we een specifiek aantal rijen ophalen die zijn gebaseerd op een bepaalde volgorde. Dit kan de basissortering omvatten (oplopend of aflopend), enz.

Stel dat we bijvoorbeeld de top 10 van langste films uit de tabel 'film' willen halen. We kunnen de ORDER BY-clausule gebruiken om de waarden te sorteren op basis van de lengte en vervolgens de eerste 10 rijen te beperken.

Een voorbeeld is als volgt:

SELECTEER f.film_id, f.title, f.length

UIT film f

VOLGORDE OP lengte OMSCH

BEGRENZING 10 ;

In dit geval gebruiken we de ORDER BY-clausule om de rijen in aflopende volgorde te ordenen (van hoog naar laag) en halen we vervolgens de eerste tien rijen op met behulp van de LIMIT-clausule.

De resultatenset is als volgt:

  Een tabel of een lijst Beschrijving automatisch gegenereerd met gemiddelde betrouwbaarheid

Daar heb je het!

Conclusie

In dit bericht hebben we de basisprincipes en geavanceerde functies geleerd van het werken met de LIMIT-clausule in SQL-databases.