Quantcast
Channel: கணியம்
Viewing all articles
Browse latest Browse all 1914

Advanced MySQL – Joins

$
0
0

JOIN

 

இரண்டு வெவ்வேறு table- ல் இருக்கும் ஒரு பொதுவான column- ஐப் பயன்படுத்தி அவற்றை இணைத்து , அதன்பின் இரண்டிலிருந்தும் தகவல்களைப் பெறுவதற்கு JOIN பயன்படுகிறது .

 

இதனை Inner Join, Outer Join, Cross Join என்று மூன்று வகையாகப் பிரிக்கலாம் . Outer Join- ஐ left outer, right outer என்று இரண்டு வகையாகப் பிரிக்கலாம் . இவை எவ்வாறு இணைந்து தகவல்களை வெளிப்படுத்துகின்றன என்பதைப் பின்வரும் படத்தின் மூலம் புரிந்து கொள்ளலாம் .

 

ITEmployees, ITDepartment எனும் tables- ல் உள்ள தகவல்களைப் பின்வரும் படத்தில் காணலாம் . பின்னர் இவை எவ்வாறு இணைந்து தகவல்களை வெளிப்படுத்துகின்றன என்பதை ஒவ்வொன்றாகப் பார்க்கலாம் .

Inner Join

 

Query-49

 

இதில் INNER JOIN என்பது இணைப்பிற்காக நாம் பயன்படுத்தியிருக்கும் பொதுவான column- ன் மதிப்பு இரண்டு table- களிலும் ஒன்றாக இருந்தால் மட்டுமே தகவல்களை வெளிப்படுத்தும் . இதனை Equi Join எனவும் அழைக்கலாம் .

select * from ITEmployees e inner join ITDepartment d on e.dept_id=d.dept_id;

Outer Join

இதனை Left Outer, Right Outer, Full Outer என்று மூன்று வகையாகப் பிரிக்கலாம் .

Query-50

 

LEFT OUTER JOIN என்பது இடப்பக்கம் இருக்கும் table- லிருந்து அனைத்து தகவல்களையும் வெளிப்படுத்தும் . பின்னர் இணைப்பிற்காக நாம் பயன்படுத்தியிருக்கும் பொதுவான column- ன் மதிப்பு , வலப்பக்கத்து மதிப்புடன் ஒத்துப் போனால் மட்டுமே வலப்பக்கத்திலிருந்து தகவல்களை எடுத்து வெளிப்படுத்தும் . அப்படி இல்லையென்றால் Null மதிப்பினை வெளிப்படுத்தும் .

select * from ITEmployees e left outer join ITDepartment d on e.dept_id=d.dept_id;

 

 

 

 

 

 

 

 

 

 

 

Query-51

RIGHT OUTER JOIN என்பது வலப்பக்கம் இருக்கும் table- லிருந்து அனைத்து தகவல்களையும் வெளிப்படுத்தும் . பின்னர் இணைப்பிற்காக நாம் பயன்படுத்தியிருக்கும் பொதுவான column- ன் மதிப்பு , இடப்பக்கத்து மதிப்புடன் ஒத்துப் போனால் மட்டுமே இடப்பக்கத்திலிருந்து தகவல்களை எடுத்து வெளிப்படுத்தும் . அப்படி இல்லையென்றால் Null மதிப்பினை வெளிப்படுத்தும் .

select * from ITEmployees e right outer join ITDepartment d on e.dept_id=d.dept_id;

 

 

 

 

 

 

 

 

 

 

 

Query-52

FULL OUTER JOIN என்பது இடப்பக்கத்து மதிப்புகளை வெளிப்படுத்திய பின்னர் , வலப்பக்கத்து மதிப்புடன் ஒத்துப் போகவில்லையென்றால் Null மதிப்பினையும் அவ்வாறே , வலப்பக்கத்து மதிப்புகளை வெளிப்படுத்திய பின்னர் , இடப்பக்கத்து மதிப்புடன் ஒத்துப் போகவில்லையென்றால் Null மதிப்பினையும் வெளிப்படுத்தும் .

 

Mysql- ல் FULL OUTER JOIN எனும் keyword கிடையாது . ஏனெனில் LEFT OUTER மற்றும் RIGHT OUTER இரண்டும் சேர்ந்து நடைபெறுவது தான் FULL OUTER. ஆகவே அவை இரண்டையும் UNION செய்வதன் மூலம் நாம் full outer- ஐ நிகழ்த்திவிடலாம் . (UNION – ஐப் பற்றி நாம் set operators- ல் விரிவாகக் காண்போம் )

 

select * from ITEmployees e left outer join ITDepartment d on e.dept_id=d.dept_id union select * from ITEmployees e right outer join ITDepartment d on e.dept_id=d.dept_id;

 

Self Join

Query-53

 

ஒரே ஒரு table- ன் இரண்டு instance இணைக்கப்பட்டு , அதிலிருந்து தகவல்களைப் பெறுவது self join எனப்படும் .

select s1.Emp_id,s1.emp_name from selfie s1 join selfie s2 where s1.Emp_ID=s2.Manager_ID;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Cartesian Join / Cross Join

 

Cartesian Join அல்லது Cross Join என்பது மிகவும் அரிதாகப் பயன்படக் கூடிய ஒன்று . ஏனெனில் முதல் table- ல் 8 வரிகள் , இரண்டாவது table- ல் 8 வரிகள் உள்ளதெனில் , இவ்விரண்டையும் இணைத்து நாம் தகவல்களைப் பெரும் போது அது 64 வரிகளை வெளிப்படுத்தும் . அதாவது முதல் table- ல் உள்ள 8 வரிகளும் , இரண்டாவது table- ல் உள்ள முதல் வரியுடன் இணைந்து வெளிப்படும் . பின்னர் மீண்டும் முதல் table- ல் உள்ள 8 வரிகளும் , இரண்டாவது table- ல் உள்ள இரண்டாவது வரியுடன் இணைந்து வெளிப்படும் . அவ்வாறே ஒவ்வொரு முறையும் நிகழ்ந்து மிகப் பெரிய எண்ணிக்கையில் தகவல்களை வெளிப்படுத்தும் .

 

Query-54

select * from ITEmployees,ITDepartment;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

—-

 

து. நித்யா

இவர் cognizant நிறுவனத்தில் Data Warehouse Testing-ல் பணியாற்றி வருகிறார்.

மின்னஞ்சல் : nithyadurai87@gmail.com

வலை : http://nithyashrinivasan.wordpress.com


Viewing all articles
Browse latest Browse all 1914

Trending Articles


‘ஹன்சிகா நிர்வாண குளியல் வீடியோ': பதறிப்போன கோடம்பாக்கம்


மாமனார், மாமியாரை மருமக்களும் பராமரிப்பது கட்டாயம்: சட்ட திருத்தம் செய்ய...


கலப்படம் கலப்படம்


குழந்தை பிறந்த நேரம் எப்படி..? கண்டாந்தர நட்சத்திர தோசம்


ஆசீர்வாத மந்திரங்கள்


மாணிக்கவாசகர் பிறந்த ஊர்


மது போதையில் ஆட்டம், வீடியோவால் வந்த வினை... மாணவிகளுக்கு செக் வைத்த கல்லூரி.!


சகல தோஷமும் நிவர்த்தியாகும் ஸ்லோகம்


ஒன்பது கோடி முனிவர்கள் மற்றும் தேவர்களின் அருளை பெற்றுத்தரும் பதஞ்சலி காயத்ரி...


“உலகையே மிரள வைக்கும் “ திருநள்ளாறு சனீஸ்வரர் பகவான் !!