Izberite prvih 10 vrstic v SQL

Izberite Prvih 10 Vrstic V Sql



Ko delamo v bazi podatkov SQL, lahko naletimo na primere, ko moramo pridobiti določeno podmnožico vrstic iz dane tabele. To nam omogoča, da omejimo vire, potrebne za pridobivanje vrednosti iz tabele.

Na srečo imamo v SQL dostop do klavzule LIMIT, ki nam omogoča nadzor nad številom vrstic, ki so vrnjene znotraj danega nabora rezultatov. Ta funkcija je zelo uporabna, ko imamo opravka z velikim naborom podatkov in dejansko ne potrebujemo celotne vrstice, temveč njen podnabor. To je lahko za pridobitev postavitve podatkov ali predstavitve.

V tej vadnici se bomo naučili, kako lahko uporabimo klavzulo LIMIT in delamo z njo v bazah podatkov SQL, da določimo število vrstic, ki jih želimo pridobiti iz baze podatkov.







Zahteve:

Preden se poglobimo v delovanje in uporabo klavzule LIMIT v SQL, se pogovorimo o nekaterih osnovnih zahtevah za to vadnico.



Če želite slediti tej objavi, boste potrebovali naslednje:



  1. MySQL 8.0 in novejši delujejo z MySQL 5
  2. Dostop do zbirke vzorcev Sakila
  3. Dovoljenja za poizvedovanje po vrsticah iz ciljne zbirke podatkov (dostop za branje)

Ko so dane zahteve izpolnjene, lahko nadaljujemo s to vadnico.





OMEJITEV SQL

V SQL nam klavzula LIMIT omogoča, da omejimo število vrstic, ki jih vrne določena poizvedba SQL. Na primer, v stavku select lahko namesto vrnitve vseh vrstic iz tabele, ki lahko vsebuje več kot 1000 zapisov, izberemo ogled le prvih 10 vrstic.

Naslednje prikazuje osnovno sintakso klavzule LIMIT v SQL:



IZBERI stolpec1, stolpec2, ...

IZ tbl_name

LIMIT num_rows;

V tem primeru uporabljamo klavzulo LIMIT v povezavi s stavkom SELECT.

Iz dane sintakse 'tbl_name' predstavlja ime tabele, iz katere želimo pridobiti podatke.

»num_rows« nam omogoča, da določimo največje število vrstic, ki so vrnjene v nizu rezultatov.

Primer 1: Omejite število vrstic

Najpogostejša in temeljna vloga klavzule LIMIT je nastavitev največjega števila vrstic, ki so vključene v nabor rezultatov.

Recimo, da želimo uporabiti tabelo »film« iz vzorčne zbirke podatkov Sakila. Ker pa ne želimo pridobiti vseh povezanih vrstic, lahko izberemo prvih 10 vrstic, kot je prikazano v naslednjem primeru klavzule:

IZBERI * IZ filma

OMEJITEV 10 ;

Ko izvedemo dano poizvedbo, bi morali dobiti naslednji rezultat:

  Posnetek zaslona računalnika Opis samodejno ustvarjen

V tem primeru uporabimo klavzulo LIMIT, da omejimo nabor rezultatov na 10 vrstic. To pridobi prvih 10 vrstic iz rezultata.

2. primer: uporaba vrednosti OFFSET

V nekaterih primerih bomo morda želeli preskočiti ali izpustiti določeno število vrstic. Na primer, recimo, da želimo pridobiti samo pet elementov, vendar želimo začeti na položaju 20. Uporabimo lahko parameter OFFSET, ki nam omogoča, da klavzuli LIMIT povemo, na katerem položaju želimo začeti.

To je še posebej uporabno, ko morate implementirati paginacijo v velikem naboru podatkov, kot je prikazano v naslednjem primeru:

IZBERI film_id, naslov, leto_izida, `dolžina` IZ filma

OMEJITEV 10 OFFSET dvajset ;;

To bi moralo vrniti 10 vrstic, začenši s položajem 20, kot sledi:

Kot lahko vidite iz danega rezultata, se začetni »film_id« začne na položaju 21 in nadaljuje na položaj 30.

Primer 3: Uporaba klavzule Order BY

Druga pogosta uporaba klavzule LIMIT je v kombinaciji s klavzulo ORDER BY. To nam omogoča, da pridobimo določeno število vrstic, ki temeljijo na določenem vrstnem redu. To lahko vključuje osnovno razvrščanje (naraščajoče ali padajoče) itd.

Denimo, da želimo iz tabele »film« pridobiti prvih 10 najdaljših filmov. S klavzulo ORDER BY lahko razvrstimo vrednosti glede na dolžino in nato omejimo prvih 10 vrstic.

Primer je naslednji:

IZBERITE f.film_id, f.title, f.length

IZ filma f

NAROČITE PO dolžini DESC

OMEJITEV 10 ;

V tem primeru uporabimo klavzulo ORDER BY, da razvrstimo vrstice v padajočem vrstnem redu (od najvišje do najnižje) in nato pridobimo prvih 10 vrstic s klavzulo LIMIT.

Nabor rezultatov je naslednji:

  Tabela opisa seznama, samodejno ustvarjena s srednjo stopnjo zanesljivosti

Tukaj imaš!

Zaključek

V tej objavi smo se naučili osnov in naprednih funkcij dela s klavzulo LIMIT v zbirkah podatkov SQL.