Syntax:-
SELECT column_name(s)
FROM table_name1
RIGHT JOIN table_name2
ON table_name1.column_name=table_name2.column_name;
Now look at the two tables, TABLE A and TABLE B:
TABLE A
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | ABC | DEF | Street 10 | City 1 |
2 | GHI | JKL | Street 20 | City 2 |
3 | MNO | PQR | Street 30 | City 3 |
TABLE B
O_Id | OrderNo | P_Id |
---|---|---|
1 | 778951 | 3 |
2 | 446781 | 3 |
3 | 224561 | 1 |
4 | 245621 | 1 |
5 | 347641 | 15 |
Now we apply the SQL RIGHT JOIN query:
SELECT TABLE A.LastName, TABLE A.FirstName, TABLE B.OrderNo
FROM TABLE A
RIGHT JOIN TABLE B
ON TABLE A.P_Id=TABLE B.P_Id
ORDER BY TABLE A.LastName;
The above query will return all the rows from TABLE A even there is no match with TABLE B. That does not mean that no check for common rows are made. The result of the above query will be:
OUTPUT
LastName | FirstName | OrderNo |
---|---|---|
ABC | DEF | 224561 |
ABC | DEF | 245621 |
MNO | PQR | 778951 |
MNO | PQR | 446781 |
347641 |
NOTE: In some places SQL RIGHT JOIN is also refered as RIGHT OUTER JOIN.