'Right Join' is a type of join that displays all the rows from the right side table along with the matching data of
the left side table.
The Right Join
The 'Right Join 'is a type of outer join. It is also known as RIGHT OUTER JOIN. This join retrieves all the records
from the right table in conjunction with all the matching rows from the left table. Null values are returned for the left table
values where there are no matching records.
SQL 'Right Join' Syntax
Select tableA.column1,tableA.column-2,tableA.column-3,...tableA.column-n,tableB.column1,
tableB.column2,.....tableB.columnn
from table A
RIGHT JOIN tableB on tableA.columnname= tableB.columnname
The Right Join Example
Here let us assume that the 'Employees' table is first table and placed on the left side.The
'Employees' table contains the following columns and their respective data as shown
below.
Select EmployeeID,EmployeeName,DateOfBirth,DesignationID,DeptID,City,Salary
from Employees
1 |
Richard Hughes |
4/23/1945 12:00:00 AM |
1 |
1 |
New Orleans |
950.00 |
2 |
Taryn Sinclair |
3/22/1980 12:00:00 AM |
2 |
2 |
San Francisco |
800.00 |
3 |
Ted Horowitz |
3/31/1960 12:00:00 AM |
3 |
4 |
New York |
700.00 |
4 |
Jonathan Douglas |
7/7/1971 12:00:00 AM |
3 |
4 |
Salt Lake City |
600.00 |
5 |
Miranda Leigh |
7/19/1983 12:00:00 AM |
7 |
3 |
New York |
500.00 |
6 |
Jana Rae |
9/23/1976 12:00:00 AM |
8 |
2 |
Houston |
400.00 |
7 |
Lita Rosanna |
9/14/1982 12:00:00 AM |
4 |
6 |
Long Island |
650.00 |
8 |
Colin Flooks |
12/29/1988 12:00:00 AM |
4 |
2 |
Salt Lake City |
600.00 |
9 |
Anthony Frank |
2/22/1988 12:00:00 AM |
9 |
3 |
San Francisco |
750.00 |
10 |
Stephanie Lynn |
7/30/1979 12:00:00 AM |
8 |
2 |
Salt Lake City |
450.00 |
11 |
Jack Martin |
8/25/1985 12:00:00 AM |
NULL |
NULL |
Austin |
500.00 |
The Department table now becomes the second table or goes on the right side. The
'Department' tables contains the following columns and their respective data as shown
below.
Select DeptID, DeptName
from Department
1 |
Finance |
2 |
Development |
3 |
Testing |
4 |
Delivery |
5 |
Human Resources |
6 |
Administration |
Select A.EmployeeID,A.EmployeeName,A.DateOfBirth,A.DesignationID,A.City,
A.Salary ,B.DeptID, B.DeptName
from Employees A
Right Join Department B on A.DeptID=B.DeptID
1 |
Richard Hughes |
4/23/1945 12:00:00 AM |
1 |
New Orleans |
950.00 |
1 |
Finance |
2 |
Taryn Sinclair |
3/22/1980 12:00:00 AM |
2 |
San Francisco |
800.00 |
2 |
Development |
6 |
Jana Rae |
9/23/1976 12:00:00 AM |
8 |
Houston |
400.00 |
2 |
Development |
8 |
Colin Flooks |
12/29/1988 12:00:00 AM |
4 |
Salt Lake City |
600.00 |
2 |
Development |
10 |
Stephanie Lynn |
7/30/1979 12:00:00 AM |
8 |
Salt Lake City |
450.00 |
2 |
Development |
5 |
Miranda Leigh |
7/19/1983 12:00:00 AM |
7 |
New York |
500.00 |
3 |
Testing |
9 |
Anthony Frank |
2/22/1988 12:00:00 AM |
9 |
San Francisco |
750.00 |
3 |
Testing |
3 |
Ted Horowitz |
3/31/1960 12:00:00 AM |
3 |
New York |
700.00 |
4 |
Delivery |
4 |
Jonathan Douglas |
7/7/1971 12:00:00 AM |
3 |
Salt Lake City |
600.00 |
4 |
Delivery |
NULL |
NULL |
NULL |
NULL |
NULL |
NULL |
5 |
Human Resources |
7 |
Lita Rosanna |
9/14/1982 12:00:00 AM |
4 |
Long Island |
650.00 |
6 |
Administration |
Note: The Right Join is the opposite of the Left Outer Join. Here all the records of the 'Department' table
are taken and matching records from left table records. Since there are no columns matching in the left table
for 'Human Resources', it returns NULL values in the left table.