அதிர்ஷ்டவசமாக, SQL இல், கொடுக்கப்பட்ட முடிவுத் தொகுப்பிற்குள் திரும்பும் வரிசைகளின் எண்ணிக்கையைக் கட்டுப்படுத்த அனுமதிக்கும் LIMIT விதிக்கான அணுகல் எங்களிடம் உள்ளது. நாம் ஒரு பெரிய தரவுத் தொகுப்பைக் கையாளும் போது இந்த அம்சம் மிகவும் பயனுள்ளதாக இருக்கும் மற்றும் உண்மையில் முழு வரிசையும் தேவையில்லை, மாறாக அதன் துணைக்குழு. இது தரவு அல்லது விளக்கக்காட்சியின் அமைப்பைப் பெறுவதற்காக இருக்கலாம்.
இந்த டுடோரியலில், தரவுத்தளத்திலிருந்து மீட்டெடுக்க விரும்பும் வரிசைகளின் எண்ணிக்கையைக் குறிப்பிட, SQL தரவுத்தளங்களில் உள்ள LIMIT உட்பிரிவை எவ்வாறு பயன்படுத்தலாம் மற்றும் வேலை செய்யலாம் என்பதைக் கற்றுக்கொள்வோம்.
தேவைகள்:
SQL இல் உள்ள LIMIT விதியின் செயல்பாடுகள் மற்றும் பயன்பாட்டிற்குள் நுழைவதற்கு முன், இந்த டுடோரியலுக்கான சில அடிப்படைத் தேவைகளைப் பற்றி விவாதிப்போம்.
இந்த இடுகையைப் பின்தொடர, உங்களுக்கு பின்வருபவை தேவைப்படும்:
- MySQL 8.0 மற்றும் அதற்கு மேற்பட்டவை MySQL 5 உடன் வேலை செய்கின்றன
- சகிலா மாதிரி தரவுத்தளத்திற்கான அணுகல்
- இலக்கு தரவுத்தளத்திலிருந்து வரிசைகளை வினவுவதற்கான அனுமதிகள் (அணுகலைப் படிக்கவும்)
கொடுக்கப்பட்ட தேவைகள் பூர்த்தி செய்யப்பட்டால், இந்த டுடோரியலை நாம் தொடரலாம்.
SQL வரம்பு
SQL இல், கொடுக்கப்பட்ட SQL வினவலில் இருந்து திரும்பிய வரிசைகளின் எண்ணிக்கையைக் கட்டுப்படுத்த LIMIT விதி அனுமதிக்கிறது. எடுத்துக்காட்டாக, தேர்ந்தெடுக்கப்பட்ட அறிக்கையில், 1000 க்கும் மேற்பட்ட பதிவுகளைக் கொண்ட அட்டவணையில் இருந்து அனைத்து வரிசைகளையும் திரும்பப் பெறுவதற்குப் பதிலாக, முதல் 10 வரிசைகளை மட்டுமே பார்க்க நாம் தேர்வு செய்யலாம்.
SQL இல் LIMIT உட்பிரிவின் அடிப்படை தொடரியல் பின்வருவனவற்றைக் காட்டுகிறது:
col1, col2, ...
tbl_name இலிருந்து
LIMIT எண்_வரிசைகள்;
இந்த எடுத்துக்காட்டில், SELECT அறிக்கையுடன் இணைந்து LIMIT விதியைப் பயன்படுத்துகிறோம்.
கொடுக்கப்பட்ட தொடரியலில் இருந்து, 'tbl_name' என்பது, நாம் தரவை மீட்டெடுக்க விரும்பும் அட்டவணையின் பெயரைக் குறிக்கிறது.
முடிவுத் தொகுப்பில் வழங்கப்படும் அதிகபட்ச வரிசைகளின் எண்ணிக்கையைக் குறிப்பிட “எண்_வரிசைகள்” நம்மை அனுமதிக்கிறது.
எடுத்துக்காட்டு 1: வரிசைகளின் எண்ணிக்கையை வரம்பிடவும்
LIMIT விதியின் மிகவும் பொதுவான மற்றும் அடிப்படைப் பங்கு, முடிவுத் தொகுப்பில் சேர்க்கப்பட்டுள்ள அதிகபட்ச வரிசைகளின் எண்ணிக்கையை அமைப்பதாகும்.
சகிலா மாதிரி தரவுத்தளத்திலிருந்து “படம்” அட்டவணையைப் பயன்படுத்த விரும்புகிறோம் என்று வைத்துக்கொள்வோம். இருப்பினும், தொடர்புடைய அனைத்து வரிசைகளையும் பெற விரும்பாததால், பின்வரும் எடுத்துக்காட்டு விதியில் காட்டப்பட்டுள்ளபடி முதல் 10 வரிசைகளைத் தேர்ந்தெடுக்கலாம்:
படத்திலிருந்து * தேர்ந்தெடுஅளவு 10 ;
கொடுக்கப்பட்ட வினவலை இயக்கியதும், பின்வருமாறு ஒரு வெளியீட்டைப் பெற வேண்டும்:
இந்த எடுத்துக்காட்டில், முடிவை 10 வரிசைகளுக்குக் கட்டுப்படுத்த, LIMIT விதியைப் பயன்படுத்துகிறோம். இது முடிவிலிருந்து முதல் 10 வரிசைகளைப் பெறுகிறது.
எடுத்துக்காட்டு 2: OFFSET மதிப்பைப் பயன்படுத்துதல்
சில சந்தர்ப்பங்களில், குறிப்பிட்ட எண்ணிக்கையிலான வரிசைகளைத் தவிர்க்கவோ அல்லது தவிர்க்கவோ விரும்பலாம். எடுத்துக்காட்டாக, நாம் ஐந்து கூறுகளை மட்டுமே மீட்டெடுக்க விரும்புகிறோம், ஆனால் நாம் 20 ஆம் நிலையில் தொடங்க விரும்புகிறோம். OFFSET அளவுருவைப் பயன்படுத்தலாம், இது LIMIT விதியை எந்த நிலையில் தொடங்க விரும்புகிறோம் என்பதைக் கூற அனுமதிக்கிறது.
பின்வரும் எடுத்துக்காட்டில் காட்டப்பட்டுள்ளபடி, ஒரு பெரிய தரவுத்தொகுப்பில் பக்கத்தை செயல்படுத்த வேண்டியிருக்கும் போது இது மிகவும் பயனுள்ளதாக இருக்கும்:
ஃபிலிம்_ஐடி, தலைப்பு, ரிலீஸ்_ஆண்டு, `நீளம்` ஆகியவற்றைத் தேர்ந்தெடுக்கவும்அளவு 10 ஆஃப்செட் இருபது ;;
இது 20 ஆம் நிலையிலிருந்து தொடங்கும் 10 வரிசைகளை பின்வருமாறு வழங்க வேண்டும்:
கொடுக்கப்பட்ட முடிவிலிருந்து நீங்கள் பார்ப்பது போல், தொடக்க “film_id” 21 ஆம் நிலையில் தொடங்கி 30 ஆம் நிலைக்கு செல்கிறது.
எடுத்துக்காட்டு 3: பிரிவின்படி வரிசையைப் பயன்படுத்துதல்
LIMIT உட்பிரிவின் மற்றொரு பொதுவான பயன்பாடானது ஆர்டர் பை ஷரத்துடன் இணைந்து உள்ளது. இது ஒரு குறிப்பிட்ட வரிசையை அடிப்படையாகக் கொண்ட குறிப்பிட்ட எண்ணிக்கையிலான வரிசைகளை மீட்டெடுக்க அனுமதிக்கிறது. இதில் அடிப்படை வரிசையாக்கம் (ஏறுவரிசை அல்லது இறங்குதல்) போன்றவை அடங்கும்.
எடுத்துக்காட்டாக, 'திரைப்படம்' அட்டவணையில் இருந்து முதல் 10 நீளமான படங்களை மீட்டெடுக்க விரும்புகிறோம் என்று வைத்துக்கொள்வோம். நீளத்தின் அடிப்படையில் மதிப்புகளை வரிசைப்படுத்தவும், பின்னர் முதல் 10 வரிசைகளை வரம்பிடவும் ஆர்டர் மூலம் பிரிவைப் பயன்படுத்தலாம்.
ஒரு உதாரணம் பின்வருமாறு:
SELECT f.film_id, f.title, f.lengthஃபிலிம் எஃப்
ஆர்டர் நீளம் DESC மூலம்
அளவு 10 ;
இந்தச் சந்தர்ப்பத்தில், வரிசைகளை இறங்கு வரிசையில் (அதிகமானது முதல் குறைந்தது வரை) வரிசைப்படுத்த ஆர்டர் மூலம் பிரிவைப் பயன்படுத்துவோம், பின்னர் LIMIT விதியைப் பயன்படுத்தி முதல் 10 வரிசைகளைப் பெறுவோம்.
முடிவு தொகுப்பு பின்வருமாறு:
இதோ!
முடிவுரை
இந்த இடுகையில், SQL தரவுத்தளங்களில் LIMIT விதியுடன் பணிபுரிவதற்கான அடிப்படைகள் மற்றும் மேம்பட்ட அம்சங்களைக் கற்றுக்கொண்டோம்.