అదృష్టవశాత్తూ, SQLలో, మేము ఇచ్చిన ఫలితాల సెట్లో తిరిగి వచ్చే అడ్డు వరుసల సంఖ్యను నియంత్రించడానికి అనుమతించే LIMIT నిబంధనకు ప్రాప్యతను కలిగి ఉన్నాము. మేము పెద్ద డేటా సెట్తో వ్యవహరిస్తున్నప్పుడు ఈ ఫీచర్ చాలా ఉపయోగకరంగా ఉంటుంది మరియు వాస్తవానికి మొత్తం అడ్డు వరుస అవసరం లేదు, బదులుగా దాని ఉపసమితి అవసరం. ఇది డేటా లేదా ప్రెజెంటేషన్ యొక్క లేఅవుట్ని పొందడానికి కావచ్చు.
ఈ ట్యుటోరియల్లో, మేము డేటాబేస్ నుండి తిరిగి పొందాలనుకునే వరుసల సంఖ్యను పేర్కొనడానికి SQL డేటాబేస్లలోని LIMIT నిబంధనను ఎలా ఉపయోగించవచ్చో మరియు పని చేయాలో నేర్చుకుంటాము.
అవసరాలు:
మేము SQLలో LIMIT నిబంధన యొక్క పనితీరు మరియు వినియోగంలోకి ప్రవేశించే ముందు, ఈ ట్యుటోరియల్ కోసం కొన్ని ప్రాథమిక అవసరాలను చర్చిద్దాం.
ఈ పోస్ట్తో పాటు అనుసరించడానికి, మీకు ఈ క్రిందివి అవసరం:
- MySQL 8.0 మరియు అంతకంటే ఎక్కువ MySQL 5తో పని చేస్తుంది
- సకిలా నమూనా డేటాబేస్కు యాక్సెస్
- లక్ష్య డేటాబేస్ నుండి అడ్డు వరుసలను ప్రశ్నించడానికి అనుమతులు (రీడ్ యాక్సెస్)
ఇచ్చిన అవసరాలను తీర్చడంతో, మేము ఈ ట్యుటోరియల్తో కొనసాగవచ్చు.
SQL పరిమితి
SQLలో, ఇచ్చిన SQL ప్రశ్న నుండి తిరిగి వచ్చే అడ్డు వరుసల సంఖ్యను పరిమితం చేయడానికి LIMIT నిబంధన మమ్మల్ని అనుమతిస్తుంది. ఉదాహరణకు, ఎంచుకున్న స్టేట్మెంట్లో, 1000 కంటే ఎక్కువ రికార్డ్లను కలిగి ఉండే టేబుల్ నుండి అన్ని అడ్డు వరుసలను తిరిగి ఇచ్చే బదులు, మేము మొదటి 10 అడ్డు వరుసలను మాత్రమే వీక్షించడానికి ఎంచుకోవచ్చు.
క్రింది SQLలో LIMIT నిబంధన యొక్క ప్రాథమిక వాక్యనిర్మాణాన్ని చూపుతుంది:
col1, col2, ... ఎంచుకోండి
tbl_name నుండి
పరిమితి_సంఖ్యలు;
ఈ ఉదాహరణలో, మేము SELECT స్టేట్మెంట్తో కలిపి LIMIT నిబంధనను ఉపయోగిస్తున్నాము.
ఇచ్చిన సింటాక్స్ నుండి, “tbl_name” అనేది మనం డేటాను తిరిగి పొందాలనుకుంటున్న పట్టిక పేరును సూచిస్తుంది.
'num_rows' ఫలితాల సెట్లో అందించబడిన గరిష్ట వరుసల సంఖ్యను పేర్కొనడానికి మమ్మల్ని అనుమతిస్తుంది.
ఉదాహరణ 1: అడ్డు వరుసల సంఖ్యను పరిమితం చేయండి
ఫలితాల సెట్లో చేర్చబడిన గరిష్ట వరుసల సంఖ్యను సెట్ చేయడం LIMIT నిబంధన యొక్క అత్యంత సాధారణ మరియు ప్రాథమిక పాత్ర.
మనం సకిలా నమూనా డేటాబేస్ నుండి “ఫిల్మ్” పట్టికను ఉపయోగించాలనుకుంటున్నాము. అయినప్పటికీ, మేము అన్ని అనుబంధిత అడ్డు వరుసలను పొందకూడదనుకుంటున్నందున, కింది ఉదాహరణ నిబంధనలో చూపిన విధంగా మేము మొదటి 10 అడ్డు వరుసలను ఎంచుకోవచ్చు:
చిత్రం నుండి * ఎంచుకోండిపరిమితి 10 ;
మేము ఇచ్చిన ప్రశ్నను అమలు చేసిన తర్వాత, మేము ఈ క్రింది విధంగా అవుట్పుట్ పొందాలి:
ఈ ఉదాహరణలో, ఫలితాన్ని 10 అడ్డు వరుసలకు పరిమితం చేయడానికి మేము LIMIT నిబంధనను ఉపయోగిస్తాము. ఇది ఫలితం నుండి మొదటి 10 అడ్డు వరుసలను పొందుతుంది.
ఉదాహరణ 2: OFFSET విలువను ఉపయోగించడం
కొన్ని సందర్భాల్లో, మేము నిర్దిష్ట సంఖ్యలో అడ్డు వరుసలను దాటవేయవచ్చు లేదా వదిలివేయవచ్చు. ఉదాహరణకు, మనం కేవలం ఐదు మూలకాలను మాత్రమే తిరిగి పొందాలనుకుంటున్నాము, కానీ మనం 20వ స్థానంలో ప్రారంభించాలనుకుంటున్నాము. మనం OFFSET పరామితిని ఉపయోగించవచ్చు, ఇది మనం ఏ స్థానంలో ప్రారంభించాలనుకుంటున్నామో LIMIT నిబంధనను తెలియజేయడానికి అనుమతిస్తుంది.
కింది ఉదాహరణలో చూపిన విధంగా మీరు పెద్ద డేటాసెట్లో పేజీని అమలు చేయవలసి వచ్చినప్పుడు ఇది చాలా ఉపయోగకరంగా ఉంటుంది:
చిత్రం నుండి ఫిల్మ్_ఐడి, టైటిల్, విడుదల_సంవత్సరం, `నిడివి`ని ఎంచుకోండిపరిమితి 10 ఆఫ్సెట్ ఇరవై ;;
ఇది క్రింది విధంగా స్థానం 20 నుండి ప్రారంభమయ్యే 10 అడ్డు వరుసలను అందించాలి:
మీరు ఇచ్చిన ఫలితం నుండి చూడగలిగినట్లుగా, ప్రారంభం “film_id” స్థానం 21 వద్ద ప్రారంభమవుతుంది మరియు 30వ స్థానానికి కొనసాగుతుంది.
ఉదాహరణ 3: నిబంధన ద్వారా ఆర్డర్ని ఉపయోగించడం
పరిమితి నిబంధన యొక్క మరొక సాధారణ ఉపయోగం నిబంధన ద్వారా ఆర్డర్తో కలిపి ఉంటుంది. ఇది ఒక నిర్దిష్ట క్రమం ఆధారంగా నిర్దిష్ట సంఖ్యలో అడ్డు వరుసలను తిరిగి పొందడానికి అనుమతిస్తుంది. ఇందులో ప్రాథమిక క్రమబద్ధీకరణ (ఆరోహణ లేదా అవరోహణ) మొదలైనవి ఉంటాయి.
ఉదాహరణకు, మనం 'ఫిల్మ్' టేబుల్ నుండి టాప్ 10 పొడవైన చిత్రాలను తిరిగి పొందాలనుకుంటున్నాము. పొడవు ఆధారంగా విలువలను క్రమబద్ధీకరించడానికి, ఆపై మొదటి 10 అడ్డు వరుసలను పరిమితం చేయడానికి మేము ఆర్డర్ బై క్లాజ్ని ఉపయోగించవచ్చు.
ఒక ఉదాహరణ క్రింది విధంగా ఉంది:
SELECT f.film_id, f.title, f.lengthచిత్రం నుండి f
ఆర్డర్ పొడవు DESC ద్వారా
పరిమితి 10 ;
ఈ సందర్భంలో, మేము అడ్డు వరుసలను అవరోహణ క్రమంలో (ఎక్కువ నుండి అత్యల్పంగా) ఆర్డర్ చేయడానికి ఆర్డర్ బై నిబంధనను ఉపయోగిస్తాము మరియు LIMIT నిబంధనను ఉపయోగించి మొదటి 10 అడ్డు వరుసలను పొందుతాము.
ఫలితం సెట్ క్రింది విధంగా ఉంది:
అక్కడ మీ దగ్గర ఉంది!
ముగింపు
ఈ పోస్ట్లో, SQL డేటాబేస్లలో LIMIT నిబంధనతో పనిచేసే ప్రాథమిక అంశాలు మరియు అధునాతన లక్షణాలను మేము తెలుసుకున్నాము.