LIMIT szintaxis:
>> KIVÁLASZTÁS FROM tábla LIMIT eltolás, sorok;Itt van a LIMIT lekérdezés magyarázata:
- Kifejezés: Lehet oszlopnév vagy szterikus '*'.
- Eltolás: Az eltolás határozza meg az első sorból visszaadandó eltolást. Ha a 0-t használja eltolásként, akkor az 1. sort adja vissza, és fordítva.
- Sorok: A visszaadandó sorok száma.
Nyissa meg a MySQL parancssori shelljét, és írja be a jelszót. A folytatáshoz nyomja meg az Enter billentyűt.
Tegyük fel, hogy a MySQL adatbázisában van egy „tanár” nevű tábla, az alábbiak szerint. Ha korlátlan definiálás nélkül szeretné letölteni a táblázat összes rekordját vagy sorát, akkor az egyszerű SELECT lekérdezéssel fogja megtenni az alábbiak szerint:
>> SELECT * FROM adatok.tanár;
01. példa: HATÁR csak sorszámmal:
Ha egy felhasználó a sorok számának korlátozása mellett szeretne behozni néhány rekordot, megteheti a SELECT utasításban található egyszerű LIMIT záradék használatával. Próbálkozzunk egy példával a fenti táblázat felhasználásával. Tegyük fel, hogy a fenti táblázatból csak 6 sort akar megjeleníteni, miközben a TeachName oszlop csökkenő sorrendjét követi. Próbálja ki a következő lekérdezést:
>> SELECT * FROM adatok.tanár RENDELÉS TeachName szerint DESC LIMIT 6;
02. példa: LIMIT OFFSET-rel és sorszámmal:
Próbáljuk meg ugyanazt a táblázatot definiálni az Offset mellett a sorszám mellett. Tegyük fel, hogy csak 6 rekordot kell beolvasnia a táblából, miközben a visszaadott rekordnak a 6-tól kell kezdődnieth táblázat sora. Próbálja ki a következő lekérdezést:
>> SELECT * FROM adatok.tanár DESC LIMIT 6, 6;
03. példa: HATÁR a WHERE záradékkal:
Tegyük fel, hogy az 'ugyanaz' tábla a MySQL adatbázisban található. Hívja be az egész táblázatot, miközben az 'id' oszlop növekvő sorrendjébe rendezi a SELECT paranccsal az ORDER BY paranccsal, az alábbiak szerint:
>> SELECT * FROM adatok.azonos RENDELÉS azonosítóval ASC;
A megadott lekérdezést kipróbálva véletlenszerűen három rekordot fogunk kapni a 12 és 34 év közötti korról a táblázat bármely véletlenszerű helyéről. Míg a fenti táblázatban több mint 6 rekord áll rendelkezésünkre a 12 és 34 év közötti korosztályról.
>> SELECT * FROM adatok.ugyanaz WHERE életkor> 12 év ÉS életkor < '34' LIMIT 3;
Amikor az ORDER BY záradékot használjuk a lekérdezésben anélkül, hogy megadnánk a rendelés típusát, akkor az automatikusan növekvő sorrendben fogja lekérni a rekordot az alábbiak szerint.
>> SELECT * FROM adatok.ugyanaz WHERE életkor> 12 év ÉS életkor < '34' ORDER BY age LIMIT 3;
Ha korlátozott rekordot szeretne rendezni más rendezési sorrendben, meg kell határoznia a rendezési sorrendet. Mivel a 8 soros adatokat az „age” oszlop csökkenő sorrendjében töltjük le.
>> SELECT * FROM adatok.ugyanaz WHERE életkor> 12 év ÉS életkor < '34' ORDER BY age DESC LIMIT 8;
Hívjunk csak 2 sort, ahol az állat neve kutya. A végrehajtáskor csak 1 eredményünk van, mert a '=' jel kereste a pontos mintát, és csak 1 rekord van a mintájáról.
>> SELECT * FROM adatok.ugyanaz WHERE pet = 'kutya' RENDELÉS ID ID LIMIT;
04. példa: LIMIT LIKE záradékkal és helyettesítő karakterekkel:
Megkerestük a "kutya" mintát, és csak 1 eredményt kaptunk. Míg a táblázatban több mint 1 rekord szerepel a „kutyáról”. Most ezeket a rekordokat a LIKE záradék és a LIMIT záradék felhasználásával fogjuk lekérni. Az alábbi lekérdezéssel jelenítse meg az a táblázat csak 5 rekordját, ahol a kisállat neve d-től kezdődik. Mivel csak 2 rekordunk van a "kutya" mintáról, ezért csak 2 van.
>> SELECT * FROM adatok.ugyanaz, ahol a háziállat LIKE 'd%' RENDELÉS ID LIMIT 5;
Vegyünk elő csak 10 rekordot a táblázatból, ahol a háziállatnak a neve bármely középső helyén "r" betűvel kell szerepelnie. Mivel ló, papagáj és nyúl van azokban a háziállatokban, akiknek a neve „r”, ezért csak 4 rekordot kaptunk ebből a lekérdezésből.
>> SELECT * FROM adatok.ugyanaz, ahol a háziállat LIKE "% r%" MEGRENDELÉS ID LIMIT 10;
Ha 6 olyan rekordot szeretne kapni a tábláról, ahol a kisállat nevének 't' kell lennie a végén, futtassa a megadott lekérdezést az SQL parancssori shellben. Itt 4 rekord van ebből a lekérdezésből.
>> SELECT * FROM adatok.ugyanaz, ahol a háziállat LIKE '% t' MEGRENDELÉS ID KORLÁT 6;
Ha 8 rekordot szeretne kapni a tábláról, ahol egy személy munkájának „er” -nek kell lennie a végén, futtassa az alábbi lekérdezést a héjban. Itt 6 rekordot kaptunk ebből a lekérdezésből.
>> SELECT * FROM adatok.ugyanaz a WHERE munka, mint a '% er' RENDELÉS életkor szerint ASC LIMIT 8;
Változtassuk meg a WHERE záradékot a LIKE utasítással együtt a SELECT lekérdezésben. Tegyük fel, hogy egy 6 soros rekordot szeretne lekérni az 'ugyanaz' táblából. Megpróbált egy feltételt, hogy lehívja azokat az egyetlen rekordot, amelyeknél az 'fname' értékének utolsónak kell lennie az 'a' -nak, az 'lname' pedig az értékének bármely középső helyén szerepelnie kell 'a'. Másrészt az adatokat az „életkor” oszlop csökkenő sorrendjében kell rendezni. E 6 rekord megszerzéséhez futtassa az alább megadott lekérdezést az SQL parancssori shellben. 5 rekordot kaptunk erről a feltételről, és az eredményt alább mutatjuk be.
>> SELECT * FROM adatok.ugyanaz WHERE fname LIKE '% a' ÉS lname LIKE '% a%' RENDELÉS életkor szerint DESC LIMIT 5;
Következtetés:
Remélem, hogy teljesen felkészült a LIMT témára, miután a LIMIT záradék szinte összes példáját kipróbálta tagjaival együtt, e.g., Eltolás és sorszám.