LIMITNÁ syntax:
>> ZVOLIŤ výraz z tabuľky LIMIT odsadenie, riadky;Tu je vysvetlenie dotazu LIMIT:
- Vyjadrenie: Môže to byť názov stĺpca alebo sterické „*“.
- Ofset: Posun určuje posun, ktorý sa má vrátiť z prvého riadku. Ak použijete 0 ako posunutie, vráti sa riadok 1 a naopak.
- Riadky: Celkový počet riadkov, ktoré sa majú vrátiť.
Otvorte shell príkazového riadku MySQL a zadajte heslo. Pokračujte stlačením klávesu Enter.
Predpokladajme, že máte vo svojej databáze MySQL tabuľku s názvom „učiteľ“, ako je uvedené nižšie. Ak chcete načítať všetky záznamy alebo riadky tejto tabuľky bez definovania limitu, urobíte to pomocou jednoduchého dotazu SELECT nasledujúcim spôsobom:
>> SELECT * FROM data.učiteľ;
Príklad 01: LIMIT iba s číslom riadku:
Ak chce užívateľ načítať niektoré záznamy a zároveň obmedziť počet riadkov, môže to urobiť pomocou jednoduchej klauzuly LIMIT v príkaze SELECT. Vyskúšajme príklad pri použití vyššie uvedenej tabuľky. Predpokladajme, že chcete zobraziť iba 6 riadkov z vyššie uvedenej tabuľky a zároveň zobraziť riadky v zostupnom poradí stĺpca TeachName. Vyskúšajte nasledujúci dotaz:
>> SELECT * FROM data.učiteľ OBJEDNAŤ PODĽA TeachName DESC LIMIT 6;
Príklad 02: LIMIT S OFSETOM a číslom riadku:
Vyskúšajme tú istú tabuľku, aby sme vedľa čísla riadku definovali offset. Predpokladajme, že z tabuľky musíte načítať iba 6 záznamov, zatiaľ čo vrátený záznam musí začínať od 6th riadok tabuľky. Vyskúšajte nasledujúci dopyt:
>> SELECT * FROM data.učiteľ DESC LIMIT 6, 6;
Príklad 03: LIMIT s klauzulou WHERE:
Predpokladajme, že tabuľka „rovnaká“ sa nachádza v databáze MySQL. Načítajte celú tabuľku a zoraďte ju vo vzostupnom poradí podľa stĺpca „id“ pomocou príkazu SELECT spolu s príkazom ORDER BY takto:
>> SELECT * FROM data.to isté OBJEDNAŤ podľa id ASC;
Pokúsime sa o zadaný dopyt a budeme mať náhodné tri záznamy vo veku od 12 do 34 rokov z ľubovoľného náhodného umiestnenia tabuľky. V tabuľke uvedenej vyššie máme viac ako 6 záznamov o vekovej skupine od 12 do 34 rokov.
>> SELECT * FROM data.rovnaké KDE vek> 12 rokov A vek < '34' LIMIT 3;
Keď v dotaze použijeme klauzulu ORDER BY bez uvedenia typu objednávky, záznam sa automaticky načíta vo vzostupnom poradí, ako je uvedené nižšie.
>> SELECT * FROM data.rovnaké KDE vek> 12 rokov A vek < '34' ORDER BY age LIMIT 3;
Ak chcete načítať obmedzený záznam v inom poradí zoradenia, musíte definovať poradie zoradenia. Pri načítaní 8-riadkových údajov pomocou zostupného poradia stĺpca „age“.
>> SELECT * FROM data.rovnaké KDE vek> 12 rokov A vek < '34' ORDER BY age DESC LIMIT 8;
Načítajme iba 2 riadky, kde je názov zvieraťa „pes“. Pri vykonávaní máme iba 1 výsledok, pretože znamienko '=' hľadalo presný vzor a máme iba 1 záznam jeho vzoru.
>> SELECT * FROM data.to isté KDE pet = 'pes' OBJEDNAŤ NA ID LIMIT 2;
Príklad 04: LIMIT s klauzulou LIKE a jej zástupnými znakmi:
Hľadali sme vzor „pes“ a dostali sme iba 1 výsledok. Aj keď v tabuľke máme viac ako 1 záznam o „psovi“. Teraz tieto záznamy načítame pomocou klauzuly LIKE spolu s klauzulou LIMIT. Ak chcete zobraziť iba 5 záznamov tabuľky, kde názov domáceho maznáčika začína písmenom „d“, skúste použiť nasledujúci dotaz. Pretože máme iba 2 záznamy o vzore „pes“, preto sme dostali iba 2.
>> SELECT * FROM data.to isté KDE pet ako „d%“ OBJEDNAŤ NA ID LIMIT 5;
Načítajme iba 10 záznamov z tabuľky, kde musí mať domáce zviera „r“ na ľubovoľnom prostrednom mieste svojho mena. Pretože máme v domácich miláčikoch kôň, papagáj a králik, ktorí majú v svojom mene písmeno „r“, máme z tohto dotazu iba 4 záznamy.
>> SELECT * FROM data.to isté KDE miláčik AKO '% r%' OBJEDNAŤ NA ID LIMIT 10;
Ak chcete získať 6 záznamov tabuľky, kde na konci názvu zvieraťa musí byť 't', spustite uvedený dopyt v prostredí príkazového riadku SQL. Tu máme 4 záznamy z tohto dopytu.
>> SELECT * FROM data.to isté KDE miláčik AKO '% t' OBJEDNAŤ NA ID LIMIT 6;
Ak chcete získať 8 záznamov z tabuľky, v ktorej musí byť úloha človeka na konci označená „e“, spustite nasledujúci dotaz v shelli. Tu máme 6 záznamov z tohto dopytu.
>> SELECT * FROM data.rovnaká KDE PRÁCA AKO „% er“ OBJEDNAŤ PODĽA veku ASC LIMIT 8;
Zmeňme klauzulu WHERE spolu s príkazom LIKE v dotaze SELECT. Predpokladajme, že chcete načítať šesťriadkový záznam z tabuľky „rovnako“. Vyskúšali ste podmienku na získanie jediných záznamov, kde „fname“ musí mať na konci svojej hodnoty „a“ a „lname“ musí mať „a“ v ktoromkoľvek strednom mieste svojej hodnoty. Na druhej strane musia byť údaje zoradené podľa stĺpca „vek“ zostupne. Ak chcete získať týchto 6 záznamov, spustite nižšie uvedený dotaz v prostredí príkazového riadku SQL. Pre túto podmienku máme 5 záznamov a výsledok je uvedený nižšie.
>> SELECT * FROM data.rovnaké KDE fame LIKE '% a' AND lname LIKE '% a%' OBJEDNAŤ PODĽA veku DESC LIMIT 5;
Záver:
Dúfam, že ste úplne pripravení na tému LIMT po vyskúšaní takmer všetkých príkladov klauzuly LIMIT spolu s jej členmi, napr.g., Ofset a číslo riadku.