Pasirinkite 10 geriausių SQL eilučių

Pasirinkite 10 Geriausiu Sql Eiluciu



Kai dirbame su SQL duomenų baze, galime susidurti su atvejais, kai turime gauti tam tikrą eilučių poaibį iš nurodytos lentelės. Tai leidžia apriboti išteklius, reikalingus reikšmėms iš lentelės gauti.

Laimei, SQL turime prieigą prie LIMIT sąlygos, kuri leidžia mums kontroliuoti eilučių, kurios grąžinamos tam tikrame rezultatų rinkinyje, skaičių. Ši funkcija labai naudinga, kai susiduriame su dideliu duomenų rinkiniu ir iš tikrųjų reikia ne visos eilutės, o jos poaibio. Tai gali būti duomenų arba pateikimo išdėstymas.

Šioje pamokoje sužinosime, kaip galime naudoti ir dirbti su LIMIT sąlyga SQL duomenų bazėse, norėdami nurodyti eilučių, kurias norime gauti iš duomenų bazės, skaičių.







Reikalavimai:

Prieš pasinerdami į LIMIT sąlygos veikimą ir naudojimą SQL, aptarkime kai kuriuos pagrindinius šios pamokos reikalavimus.



Jei norite sekti šį įrašą, jums reikės:



  1. MySQL 8.0 ir naujesnės versijos veikia su MySQL 5
  2. Prieiga prie Sakilos pavyzdžių duomenų bazės
  3. Leidimai pateikti užklausą dėl eilučių iš tikslinės duomenų bazės (skaitymo prieiga)

Įvykdę nurodytus reikalavimus, galime tęsti šią mokymo programą.





SQL LIMIT

SQL sistemoje LIMIT sąlyga leidžia apriboti eilučių, kurios grąžinamos iš nurodytos SQL užklausos, skaičių. Pavyzdžiui, pasirinktame sakinyje užuot grąžinę visas lentelės eilutes, kuriose gali būti daugiau nei 1000 įrašų, galime pasirinkti peržiūrėti tik pirmąsias 10 eilučių.

Toliau parodyta pagrindinė LIMIT sąlygos sintaksė SQL:



PASIRINKTI 1 stulpelį, 2 stulpelį, ...

FROM tbl_name

LIMIT eilučių_skaičius;

Šiame pavyzdyje mes naudojame sąlygą LIMIT kartu su teiginiu SELECT.

Iš nurodytos sintaksės „tbl_name“ reiškia lentelės, iš kurios norime gauti duomenis, pavadinimą.

„Eilučių_skaičius“ leidžia nurodyti maksimalų eilučių, kurios grąžinamos rezultatų rinkinyje, skaičių.

1 pavyzdys: apribokite eilučių skaičių

Dažniausias ir pagrindinis LIMIT sąlygos vaidmuo yra nustatyti didžiausią eilučių, įtrauktų į rezultatų rinkinį, skaičių.

Tarkime, kad norime naudoti „Plėvelės“ lentelę iš Sakilos pavyzdžių duomenų bazės. Tačiau, kadangi nenorime gauti visų susijusių eilučių, galime pasirinkti pirmąsias 10 eilučių, kaip parodyta toliau pateiktame pavyzdyje:

PASIRINKTI * IŠ filmo

LIMIT 10 ;

Paleidę nurodytą užklausą, turėtume gauti tokią išvestį:

  Automatiškai sugeneruota kompiuterio aprašymo ekrano kopija

Šiame pavyzdyje mes naudojame sąlygą LIMIT, kad apribotume rezultatų rinkinį iki 10 eilučių. Iš rezultato gaunamos pirmosios 10 eilučių.

2 pavyzdys: OFFSET reikšmės naudojimas

Kai kuriais atvejais galime praleisti arba praleisti tam tikrą eilučių skaičių. Pavyzdžiui, tarkime, kad norime gauti tik penkis elementus, bet norime pradėti nuo 20 pozicijos. Galime naudoti parametrą OFFSET, kuris leidžia pasakyti LIMIT sąlygą, kurioje pozicijoje norime pradėti.

Tai ypač naudinga, kai reikia įdiegti puslapių puslapius dideliame duomenų rinkinyje, kaip parodyta šiame pavyzdyje:

PASIRINKITE filmo_id, pavadinimą, išleidimo_metus, 'ilgį' IŠ filmo

LIMIT 10 OFFSET dvidešimt ;;

Tai turėtų grąžinti 10 eilučių pradedant nuo 20 pozicijos taip:

Kaip matote iš pateikto rezultato, startas „film_id“ prasideda nuo 21 pozicijos ir tęsiasi iki 30 pozicijos.

3 pavyzdys: Užsakymo pagal sąlygą naudojimas

Kitas įprastas sąlygos LIMIT naudojimas yra kartu su sąlyga ORDER BY. Tai leidžia mums gauti tam tikrą skaičių eilučių, pagrįstų tam tikra tvarka. Tai gali apimti pagrindinį rūšiavimą (didėjimo arba mažėjimo tvarka) ir kt.

Pavyzdžiui, tarkime, kad norime gauti 10 geriausių ilgiausių filmų iš „filmų“ lentelės. Galime naudoti sąlygą ORDER BY norėdami surūšiuoti reikšmes pagal ilgį ir apriboti pirmąsias 10 eilučių.

Pavyzdys yra toks:

PASIRINKITE f.filmo_id, f.title, f.length

IŠ filmo f

ĮSAKYMAS PAGAL ilgį DESC

LIMIT 10 ;

Šiuo atveju naudojame sąlygą ORDER BY, kad eilutes surikiuotume mažėjančia tvarka (nuo didžiausios iki mažiausios), o tada gautume pirmąsias 10 eilučių naudodami LIMIT sąlygą.

Rezultatų rinkinys yra toks:

  Sąrašo aprašymo lentelė automatiškai sugeneruota su vidutiniu patikimumu

Štai jūs tai turite!

Išvada

Šiame įraše sužinojome apie darbo su LIMIT sąlyga SQL duomenų bazėse pagrindus ir išplėstines funkcijas.