இந்த டுடோரியலில், SQL இல் உள்ள பிரிவின் மூலம் பிரிவின் செயல்பாடுகளைப் பற்றி அறிந்து, மேலும் சிறுமணி துணைக்குழுவிற்கு தரவைப் பிரிக்க அதை எவ்வாறு பயன்படுத்தலாம் என்பதைக் கண்டுபிடிப்போம்.
தொடரியல்:
பிரிவு மூலம் பிரிவின் தொடரியல் மூலம் ஆரம்பிக்கலாம். தொடரியல் நீங்கள் பயன்படுத்தும் சூழலைப் பொறுத்து இருக்கலாம் ஆனால் இங்கே பொதுவான தொடரியல்:
நெடுவரிசை 1, நெடுவரிசை 2, ...
மேல் (PARTITION by partition_column1, partition_column2, ...)
அட்டவணை_பெயரில் இருந்து
கொடுக்கப்பட்ட தொடரியல் பின்வரும் கூறுகளைக் குறிக்கிறது:
- column1, column2 - இது முடிவுத் தொகுப்பில் நாம் சேர்க்க விரும்பும் நெடுவரிசைகளைக் குறிக்கிறது.
- நெடுவரிசைகள் மூலம் பிரித்தல் - தரவை எவ்வாறு பிரிக்க அல்லது குழுவாக்க விரும்புகிறோம் என்பதை இந்த விதி வரையறுக்கிறது.
மாதிரி தரவு
பிரிவின்படி பிரிவை எவ்வாறு பயன்படுத்துவது என்பதை விளக்குவதற்கு மாதிரி தரவுகளுடன் அடிப்படை அட்டவணையை உருவாக்குவோம். இந்த உதாரணத்திற்கு, தயாரிப்பு தகவலைச் சேமிக்கும் அடிப்படை அட்டவணையை உருவாக்குவோம்.
அட்டவணை தயாரிப்புகளை உருவாக்கவும் (
product_id INT முதன்மை விசை AUTO_INCREMENT,
தயாரிப்பு_பெயர் VARCHAR( 255 ),
வகை VARCHAR( 255 ),
விலை தசம( 10 , 2 ),
அளவு INT,
காலாவதி_தேதி DATE,
பார்கோடு BIGINT
);
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'செஃப் தொப்பி 25 செ.மீ' ,
'பேக்கரி' ,
24.67 ,
57 ,
'2023-09-09' ,
2854509564204 );
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'காடை முட்டை - பதிவு செய்யப்பட்ட' ,
சரக்கறை ,
17.99 ,
67 ,
'2023-09-29' ,
1708039594250 );
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'காபி - முட்டை நாக் கபுசினோ' ,
'பேக்கரி' ,
92.53 ,
10 ,
'2023-09-22' ,
8704051853058 );
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'பேரி - முட்கள் நிறைந்த' ,
'பேக்கரி' ,
65.29 ,
48 ,
'2023-08-23' ,
5174927442238 );
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'பாஸ்தா - ஏஞ்சல் ஹேர்' ,
சரக்கறை ,
48.38 ,
59 ,
'2023-08-05' ,
8008123704782 );
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'ஒயின் - ப்ரோசெக்கோ வால்டோபியாட்டீன்' ,
'உற்பத்தி' ,
44.18 ,
3 ,
'2023-03-13' ,
6470981735653 );
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'பேஸ்ட்ரி - பிரஞ்சு மினி வகைப்படுத்தப்பட்ட' ,
சரக்கறை ,
36.73 ,
52 ,
'2023-05-29' ,
5963886298051 );
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'ஆரஞ்சு - பதிவு செய்யப்பட்ட, மாண்டரின்' ,
'உற்பத்தி' ,
65.0 ,
1 ,
'2023-04-20' ,
6131761721332 );
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'பன்றி இறைச்சி - தோள்பட்டை' ,
'உற்பத்தி' ,
55.55 ,
73 ,
'2023-05-01' ,
9343592107125 );
செருகு
உள்ளே
தயாரிப்புகள் (தயாரிப்பு_பெயர்,
வகை,
விலை,
அளவு,
காலாவதி_தேதி,
பார்கோடு)
மதிப்புகள் ( 'Dc Hikiage Hira Huba' ,
'உற்பத்தி' ,
56.29 ,
53 ,
'2023-04-14' ,
3354910667072 );
மாதிரி தரவு அமைப்பைப் பெற்றவுடன், நாம் தொடரலாம் மற்றும் பிரிவின்படி பிரிவைப் பயன்படுத்தலாம்.
அடிப்படை பயன்பாடு
முந்தைய அட்டவணையில் உள்ள ஒவ்வொரு தயாரிப்பு வகைக்கும் மொத்த பொருட்களை கணக்கிட வேண்டும் என்று வைத்துக்கொள்வோம். உருப்படிகளை தனிப்பட்ட வகைகளாகப் பிரித்து, ஒவ்வொரு வகையிலும் உள்ள மொத்த அளவைத் தீர்மானிக்க நாம் பகிர்வு மூலம் பயன்படுத்தலாம்.
ஒரு உதாரணம் பின்வருமாறு:
தேர்ந்தெடுக்கவும்
பொருளின் பெயர்,
வகை,
அளவு,
மொத்த_உருப்படியாக SUM(அளவு) ஓவர் (வகை வாரியாகப் பிரித்தல்).
இருந்து
பொருட்கள்;
கொடுக்கப்பட்ட எடுத்துக்காட்டில், 'வகை' நெடுவரிசையைப் பயன்படுத்தி தரவைப் பிரிக்கிறோம் என்பதைக் கவனியுங்கள். ஒவ்வொரு வகையிலும் தனித்தனியாக மொத்த உருப்படிகளைத் தீர்மானிக்க SUM() மொத்த செயல்பாட்டைப் பயன்படுத்துகிறோம். முடிவு ஒவ்வொரு வகையிலும் உள்ள மொத்த உருப்படிகளைக் காட்டுகிறது.
பிரிவு மூலம் பகிர்வைப் பயன்படுத்துதல்
சுருக்கமாக, பிரிவின் மூலம் பிரிவின் பொதுவான பயன்பாடு சாளர செயல்பாடுகளுடன் இணைந்து உள்ளது. சாளர செயல்பாடு ஒவ்வொரு பகிர்வுக்கும் தனித்தனியாக பயன்படுத்தப்படுகிறது.
பகிர்வு மூலம் பயன்படுத்துவதற்கான பொதுவான சாளர செயல்பாடுகளில் சில பின்வருவனவற்றை உள்ளடக்குகின்றன:
- SUM() - ஒவ்வொரு பகிர்வுக்குள்ளும் ஒரு நெடுவரிசையின் கூட்டுத்தொகையைக் கணக்கிடவும்.
- AVG() - ஒவ்வொரு பகிர்வுக்குள்ளும் ஒரு நெடுவரிசையின் சராசரியைக் கணக்கிடுங்கள்.
- COUNT() - ஒவ்வொரு பகிர்விலும் உள்ள வரிசைகளின் எண்ணிக்கையை எண்ணுங்கள்.
- ROW_NUMBER() – ஒவ்வொரு பிரிவிலும் உள்ள ஒவ்வொரு வரிசைக்கும் ஒரு தனிப்பட்ட வரிசை எண்ணை ஒதுக்கவும்.
- RANK() - ஒவ்வொரு பகிர்வுக்குள்ளும் ஒவ்வொரு வரிசைக்கும் ஒரு தரவரிசையை ஒதுக்கவும்.
- DENSE_RANK() – ஒவ்வொரு பகிர்வுக்குள்ளும் ஒவ்வொரு வரிசைக்கும் அடர்த்தியான தரவரிசையை ஒதுக்கவும்.
- NTILE() - ஒவ்வொரு பகிர்வுக்குள்ளும் தரவை அளவுகளாகப் பிரிக்கவும்.
அவ்வளவுதான்!
முடிவுரை
இந்த டுடோரியலில், SQL இல் உள்ள பகிர்வு மூலம் பிரிவின் மூலம் தரவை பல்வேறு பிரிவுகளாகப் பிரித்து, அதன் விளைவாக வரும் ஒவ்வொரு பகிர்வுக்கும் தனித்தனியாக ஒரு குறிப்பிட்ட செயல்பாட்டை எவ்வாறு பயன்படுத்துவது என்பதை நாங்கள் கற்றுக்கொண்டோம்.