SQL RIGHT JOIN Keyword

வலது அட்டவணையில் இருந்து அனைத்து பதிவுகளையும் மற்றும் இடது அட்டவணையில் இருந்து பொருந்தக்கூடிய பதிவுகளையும் திரும்பப் பெற RIGHT JOIN பற்றி அறிந்து கொள்ளுங்கள்

RIGHT JOIN Keyword என்றால் என்ன?

RIGHT JOIN keyword வலது அட்டவணையில் (table2) இருந்து அனைத்து பதிவுகளையும், மற்றும் இடது அட்டவணையில் (table1) இருந்து பொருந்தக்கூடிய பதிவுகளையும் தரும். பொருந்தாதது இருந்தால், இடது பக்கத்தில் இருந்து 0 பதிவுகள் முடிவாகும்.

RIGHT JOIN தொடரியல்

SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;

குறிப்பு:

சில தரவுத்தளங்களில் RIGHT JOIN-ஐ RIGHT OUTER JOIN என்று அழைக்கிறார்கள்.

ஆர்ப்பாட்ட தரவுத்தளம்

இந்த பயிற்சியில் நாம் நன்கு அறியப்பட்ட Northwind மாதிரி தரவுத்தளத்தைப் பயன்படுத்துவோம்.

"Orders" அட்டவணையில் இருந்து ஒரு தேர்வு கீழே உள்ளது:

Orders அட்டவணை

+---------+------------+-----------+------------+------------+
| OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
+---------+------------+-----------+------------+------------+
| 10308   | 2          | 7         | 1996-09-18 | 3         |
| 10309   | 37         | 3         | 1996-09-19 | 1         |
| 10310   | 77         | 8         | 1996-09-20 | 2         |
+---------+------------+-----------+------------+------------+

மற்றும் "Employees" அட்டவணையில் இருந்து ஒரு தேர்வு:

Employees அட்டவணை

+------------+-----------+-----------+------------+------------+
| EmployeeID | LastName  | FirstName | BirthDate  | Photo      |
+------------+-----------+-----------+------------+------------+
| 1          | Davolio   | Nancy     | 12/8/1968  | EmpID1.pic |
| 2          | Fuller    | Andrew    | 2/19/1952  | EmpID2.pic |
| 3          | Leverling | Janet     | 8/30/1963  | EmpID3.pic |
+------------+-----------+-----------+------------+------------+

SQL RIGHT JOIN உதாரணம்

பின்வரும் SQL statement அனைத்து ஊழியர்களையும், மற்றும் அவர்கள் வைத்திருக்கக்கூடிய எந்த ஆர்டர்களையும் திரும்பப் பெறும்:

உதாரணம்

SELECT Orders.OrderID, Employees.LastName, Employees.FirstName
FROM Orders
RIGHT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
ORDER BY Orders.OrderID;

குறிப்பு:

RIGHT JOIN keyword வலது அட்டவணையில் (Employees) இருந்து அனைத்து பதிவுகளையும் தரும், இடது அட்டவணையில் (Orders) பொருந்தாதது இருந்தாலும் கூட.

RIGHT JOIN காட்சிப் பிரதிநிதித்துவம்

Orders அட்டவணை (இடது)

OrderID
EmployeeID
10308
7
10309
3
10310
8
RIGHT JOIN

Employees அட்டவணை (வலது)

EmployeeID
LastName
1
Davolio
2
Fuller
3
Leverling
4
Peacock

RIGHT JOIN முடிவு

OrderID
LastName
FirstName
குறிப்பு
NULL
Davolio
Nancy
ஆர்டர்கள் இல்லை
NULL
Fuller
Andrew
ஆர்டர்கள் இல்லை
10309
Leverling
Janet
பொருந்தும் ஆர்டர்
NULL
Peacock
Margaret
ஆர்டர்கள் இல்லை

கவனிக்க: RIGHT JOIN அனைத்து ஊழியர்களையும் (வலது அட்டவணை) காட்டுகிறது, அவர்களுக்கு ஆர்டர்கள் இருந்தாலும் இல்லையாலும். பொருந்தாத ஊழியர்களுக்கு OrderID NULL ஆக காட்டப்படும்.

எப்போது RIGHT JOIN பயன்படுத்த வேண்டும்

அனைத்து ஊழியர்களையும் காண

ஆர்டர்கள் இல்லாத ஊழியர்கள் உட்பட அனைத்து ஊழியர்களையும் பட்டியலிட

அனைத்து வகைகளையும் காண

தயாரிப்புகள் இல்லாத வகைகள் உட்பட அனைத்து வகைகளையும் காண

அனைத்து ஷிப்பர்களையும் காண

ஆர்டர்கள் இல்லாத ஷிப்பர்கள் உட்பட அனைத்து ஷிப்பர்களையும் பட்டியலிட

RIGHT JOIN vs LEFT JOIN

RIGHT JOIN

  • வலது அட்டவணையில் இருந்து அனைத்து வரிசைகள்
  • இடது அட்டவணையில் இருந்து பொருந்தும் வரிசைகள்
  • பொருந்தாதவைக்கு NULL மதிப்புகள்
  • மொத்த வரிசைகள் ≥ வலது அட்டவணை வரிசைகள்
SELECT *
FROM TableA
RIGHT JOIN TableB
ON TableA.ID = TableB.ID;

LEFT JOIN

  • இடது அட்டவணையில் இருந்து அனைத்து வரிசைகள்
  • வலது அட்டவணையில் இருந்து பொருந்தும் வரிசைகள்
  • பொருந்தாதவைக்கு NULL மதிப்புகள்
  • மொத்த வரிசைகள் ≥ இடது அட்டவணை வரிசைகள்
SELECT *
FROM TableA
LEFT JOIN TableB
ON TableA.ID = TableB.ID;

முக்கிய தகவல்:

RIGHT JOIN என்பது LEFT JOIN-ன் எதிர் மாற்றமாகும். TableA RIGHT JOIN TableB என்பது TableB LEFT JOIN TableA-க்கு சமமானது.

பயிற்சி

SQL RIGHT JOIN keyword என்ன செய்கிறது?

இரண்டு அட்டவணைகளில் இருந்தும் பொருந்தும் பதிவுகளை மட்டும் தரும்
✗ தவறு! இது INNER JOIN-ன் வேலை
இடது அட்டவணையில் இருந்து அனைத்து பதிவுகளையும் மற்றும் வலது அட்டவணையில் இருந்து பொருந்தும் பதிவுகளையும் தரும்
✗ தவறு! இது LEFT JOIN-ன் வேலை
வலது அட்டவணையில் இருந்து அனைத்து பதிவுகளையும் மற்றும் இடது அட்டவணையில் இருந்து பொருந்தும் பதிவுகளையும் தரும்
✓ சரி! RIGHT JOIN வலது அட்டவணையில் இருந்து அனைத்து பதிவுகளையும் தரும், இடது அட்டவணையில் பொருந்தாதது இருந்தாலும் கூட
இரண்டு அட்டவணைகளில் இருந்தும் அனைத்து பதிவுகளையும் தரும்
✗ தவறு! இது FULL OUTER JOIN-ன் வேலை