LIMIT Syntaxe:
>> VYBRAT výraz z tabulky LIMIT Odsazení, řádky;Zde je vysvětlení dotazu LIMIT:
- Výraz: Může to být název sloupce nebo sterické '*'.
- Ofset: Posun určuje posun, který má být vrácen z prvního řádku. Pokud použijete 0 jako offset, vrátí řádek 1 a naopak.
- Řádky: Celkový počet řádků, které mají být vráceny.
Otevřete prostředí příkazového řádku MySQL a zadejte heslo. Pokračujte stisknutím klávesy Enter.
Předpokládejme, že máte v databázi MySQL tabulku nazvanou „učitel“, jak je uvedeno níže. Pokud chcete načíst všechny záznamy nebo řádky této tabulky bez definování omezení, uděláte to pomocí jednoduchého dotazu SELECT následujícím způsobem:
>> SELECT * FROM data.učitel;
Příklad 01: LIMIT pouze s číslem řádku:
Pokud chce uživatel načíst nějaké záznamy a omezit počet řádků, může to udělat pomocí jednoduché klauzule LIMIT v příkazu SELECT. Zkusme příklad s využitím výše uvedené tabulky. Předpokládejme, že chcete zobrazit pouze 6 řádků z výše uvedené tabulky při zobrazení řádků v sestupném pořadí sloupce TeachName. Zkuste následující dotaz:
>> SELECT * FROM data.učitel OBJEDNAT PODLE TeachName DESC LIMIT 6;
Příklad 02: LIMIT S OFSETEM a číslem řádku:
Zkusme stejnou tabulku definovat offset vedle čísla řádku. Předpokládejme, že potřebujete načíst pouze 6 záznamů z tabulky, zatímco vrácený záznam musí začínat od 6th řádek tabulky. Zkuste následující dotaz:
>> SELECT * FROM data.učitel DESC LIMIT 6, 6;
Příklad 03: LIMIT s klauzulí WHERE:
Předpokládejme, že tabulka „stejná“ je umístěna v databázi MySQL. Načtěte celou tabulku a seřaďte ji ve vzestupném pořadí sloupce „id“ pomocí příkazu SELECT společně s OBJEDNAT BY takto:
>> SELECT * FROM data.stejné OBJEDNÁVKA podle ID ASC;
Pokusíme-li se o uvedený dotaz, budeme mít náhodné tři záznamy o věku mezi 12 a 34 lety z libovolného náhodného umístění tabulky. Ve výše uvedené tabulce máme více než 6 záznamů o věkové skupině od 12 do 34 let.
>> SELECT * FROM data.stejný KDE věk> 12 let A věk < '34' LIMIT 3;
Když v dotazu použijeme klauzuli ORDER BY bez uvedení typu objednávky, automaticky načte záznam ve vzestupném pořadí, jak je uvedeno níže.
>> SELECT * FROM data.stejné KDE věk> 12 let A věk < '34' ORDER BY age LIMIT 3;
Chcete-li načíst omezený záznam v jiném pořadí řazení, musíte definovat pořadí řazení. Jak načítáme 8řádková data pomocí sestupného pořadí sloupce 'věk'.
>> SELECT * FROM data.stejné KDE věk> 12 let A věk < '34' ORDER BY age DESC LIMIT 8;
Načteme pouze 2 řádky, kde je název zvířete „pes“. Při provádění máme pouze 1 výsledek, protože znak '=' hledal přesný vzor a máme pouze 1 záznam jeho vzoru.
>> SELECT * FROM data.stejné KDE pet = 'pes' OBJEDNAT ID id LIMIT 2;
Příklad 04: LIMIT s klauzulí LIKE a zástupnými znaky:
Hledali jsme vzor „pes“ a dostali jsme pouze 1 výsledek. I když máme v tabulce více než 1 záznam „psa“. Nyní tyto záznamy načteme pomocí klauzule LIKE spolu s klauzulí LIMIT. Chcete-li zobrazit pouze 5 záznamů v tabulce, kde název mazlíčka začíná písmenem „d“, zkuste následující dotaz. Jelikož máme pouze 2 záznamy pro vzor „pes“, máme proto jen 2.
>> SELECT * FROM data.stejné KDE mazlíček jako 'd%' OBJEDNAT ID id. LIMIT 5;
Načtěte pouze 10 záznamů z tabulky, kde musí mít zvíře „r“ na libovolném prostředním místě svého jména. Jelikož máme v domácích mazlíčcích koně, papouška a králíka, kteří mají ve svém jménu písmeno „r“, proto máme z tohoto dotazu pouze 4 záznamy.
>> SELECT * FROM data.stejné KDE mazlíček jako '% r%' OBJEDNÁVKA PODLE ID LIMIT 10;
Chcete-li získat 6 záznamů v tabulce, kde název mazlíčka musí mít na konci „t“, spusťte uvedený dotaz v prostředí příkazového řádku SQL. Zde máme 4 záznamy z tohoto dotazu.
>> SELECT * FROM data.stejné KDE mazlíček jako '% t' OBJEDNAT ID ID LIMIT 6;
Chcete-li získat 8 záznamů z tabulky, kde úloha osoby musí mít na konci „er“, spusťte níže uvedený dotaz v shellu. Zde máme 6 záznamů z tohoto dotazu.
>> SELECT * FROM data.stejná KDE práce jako '% er' OBJEDNÁVKA PODLE VĚKU ASC LIMIT 8;
Pojďme změnit klauzuli WHERE spolu s příkazem LIKE v dotazu SELECT. Předpokládejme, že chcete načíst 6řádkový záznam z tabulky „stejný“. Vyzkoušeli jste podmínku pro načtení jediných záznamů, kde 'fname' musí mít 'a' na poslední hodnotě a 'lname' musí mít 'a' na jakémkoli prostředním místě své hodnoty. Na druhé straně musí být data tříděna podle sestupného pořadí sloupce „věk“. Chcete-li získat těchto 6 záznamů, spusťte níže uvedený dotaz v prostředí příkazového řádku SQL. Pro tuto podmínku máme 5 záznamů a výsledek je uveden níže.
>> SELECT * FROM data.stejné KDE fname LIKE '% a' AND lname LIKE '% a%' OBJEDNAT PODLE věku DESC LIMIT 5;
Závěr:
Doufám, že jste plně připraveni na téma LIMT po vyzkoušení téměř všech příkladů klauzule LIMIT spolu s jejími členy, např.G., Odsazení a číslo řádku.