Mis on märksõna LIMIT?
Piir märksõna kasutatakse päringutulemites tagastatud ridade arvu piiramiseks.
Seda saab kasutada koos käsuga SELECT, UPDATE OR DELETE märksõna süntaksiga LIMIT
Märksõna LIMIT süntaks on järgmine
SELECT {fieldname(s) | *} FROM tableName(s) [WHERE condition] LIMIT N;
SIIN
- "SELECT {väljanimi (s) | *} FROM tableName (s)" on käsk SELECT, mis sisaldab välju, mille soovime oma päringus tagastada.
- "[WHERE tingimus]" on valikuline, kuid kui see on komplektis, saab seda kasutada tulemuste komplekti filtri määramiseks.
- "LIMIT N" on märksõna ja N on suvaline arv alates 0, pannes 0, kuna limiit ei tagasta päringus ühtegi kirjet. Numbri öeldes öeldes 5 tagastatakse viis kirjet. Kui määratud tabeli kirjed on väiksemad kui N, tagastatakse kõik päringu tabeli kirjed tulemuste komplektis.
Vaatame ühte näidet -
SELECT * FROM members LIMIT 2;
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | credit_ card_ number | |
---|---|---|---|---|---|---|---|---|---|
1 | Janet Jones | Female | 21-07-1980 | NULL | First Street Plot No 4 | Private Bag | 0759 253 542 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
Nagu ülaltoodud ekraanipildilt näete, on tagastatud ainult kaks liiget.
Kümnest (10) liikmest koosneva nimekirja saamine ainult andmebaasist
Oletame, et tahame Myflixi andmebaasist saada esimese 10 registreeritud liikme nimekirja. Selle saavutamiseks kasutaksime järgmist skripti.
SELECT * FROM members LIMIT 10;
Ülaltoodud skripti käivitamine annab meile allpool näidatud tulemused
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | credit_ card_ number | |
---|---|---|---|---|---|---|---|---|---|
1 | Janet Jones | Female | 21-07-1980 | NULL | First Street Plot No 4 | Private Bag | 0759 253 542 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
3 | Robert Phil | Male | 12-07-1989 | NULL | 3rd Street 34 | NULL | 12345 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
4 | Gloria Williams | Female | 14-02-1984 | NULL | 2nd Street 23 | NULL | NULL | NULL | NULL |
5 | Leonard Hofstadter | Male | NULL | NULL | Woodcrest | NULL | 845738767 | NULL | NULL |
6 | Sheldon Cooper | Male | NULL | NULL | Woodcrest | NULL | 976736763 | NULL | NULL |
7 | Rajesh Koothrappali | Male | NULL | NULL | Woodcrest | NULL | 938867763 | NULL | NULL |
8 | Leslie Winkle | Male | 14-02-1984 | NULL | Woodcrest | NULL | 987636553 | NULL | NULL |
9 | Howard Wolowitz | Male | 24-08-1981 | NULL | SouthPark | P.O. Box 4563 | 987786553 | lwolowitz[at]email.me | NULL |
Pange tähele, et meie päringus on tagastatud ainult 9 liiget, kuna klauslis LIMIT on N suurem kui meie tabelis olevate kirjete koguarv.
Ülaloleva skripti uuesti kirjutamine järgmiselt
SELECT * FROM members LIMIT 9;
Tagastab meie päringu tulemuste komplektis ainult 9 rida.
OFF SET-i kasutamine päringus LIMIT
OFF SET väärtus on ka kõige sagedamini kasutatakse koos LIMIT märksõna. Väärtus OFF SET võimaldab meil määrata, millist rida andmete hankimisel alustada
Oletame, et soovime saada piiratud arvu liikmeid alates ridade keskelt, selle saavutamiseks võime kasutada märksõna LIMIT koos nihke väärtusega. Allpool toodud skript saab andmed alates teisest reast ja piirab tulemusi 2-ga.
SELECT * FROM `members` LIMIT 1, 2;
Ülaltoodud skripti käivitamine MySQL-i töölaual myflixdb-ga annab järgmised tulemused.
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | credit_ card_ number | |
---|---|---|---|---|---|---|---|---|---|
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
3 | Robert Phil | Male | 12-07-1989 | NULL | 3rd Street 34 | NULL | 12345 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
Millal peaksime kasutama märksõna LIMIT?
Oletame, et arendame rakendust, mis töötab myflixdb peal. Meie süsteemidisainer on palunud meil aeglase laadimisaja ületamiseks piirata lehel kuvatavate kirjete arvu, öeldes 20 kirjet lehe kohta. Kuidas jätkame sellistele kasutajate nõuetele vastava süsteemi juurutamist? Märksõna LIMIT tuleb sellistes olukordades kasuks. Saaksime piirata päringult tagastatud tulemuste arvu 20 kirjega ainult lehe kohta.
Kokkuvõte
- Märksõna LIMIT kasutatakse tulemuste komplektist tagastatud ridade arvu piiramiseks.
- LIMIT-arv võib olla mis tahes arv nullist (0) ülespoole suundudes. Kui piiriks on määratud null (0), ei tagastata tulemite komplektist ühtegi rida.
- Väärtus OFF SET võimaldab meil määrata, millist rida andmete hankimisel alustada
- Seda saab kasutada koos käsuga SELECT, UPDATE OR DELETE märksõna süntaksiga LIMIT