SQL Right JOIN
The RIGHT JOIN keyword returns you all rows from the right table (table_name1), incase if there are no matches in the left table (table_name2). .The RIGHT JOIN is also called RIGHT OUTER JOIN.
Understand with Example
The Tutorial illustrate an example from RIGHT OUTER JOIN. In this example, The table Stu_Table and Lib_Table is created using create statement. The insert into statement adds the records or rows to the tables respectively. Finally the select statement returns you the records set from respective tables.
Create Table Stu_Table
create table Stu_Table(Stu_Id integer(2), Stu_Name varchar(15), Stu_Class varchar(10));
Create Table Lib_Table
create table Lib_Table(Stu_Id integer(2), Lib_no integer(5)); |
Insert data into Stu_Table
insert into Stu_Table values(1,'Komal',10); insert into Stu_Table values(2,'Ajay',10); insert into Stu_Table values(3,'Rakesh',10); insert into Stu_Table values(4,'Bhanu',10); insert into Stu_Table values(5,'Santosh',10); insert into Stu_Table values(8,'Tanuj',10); |
Insert data into Lib_Table
insert into Lib_Table values(1,101); insert into Lib_Table values(2,102); insert into Lib_Table values(3,103); insert into Lib_Table values(4,104); insert into Lib_Table values(5,105); insert into Lib_Table values(6,106); insert into Lib_Table values(7,107); |
Stu_Table
Stu_Id | Stu_Name | Stu_Class |
1 | Komal | 10 |
2 | Ajay | 10 |
3 | Rakesh | 10 |
4 | Bhanu | 10 |
5 | Santosh | 10 |
8 | Tanuj | 10 |
Lib_Table
Stu_Id | Lib_no |
1 | 101 |
2 | 102 |
3 | 103 |
4 | 104 |
5 | 105 |
6 | 106 |
7 | 107 |
SQL RIGHT JOIN Syntax
The SQL RIGHT JOIN Syntax display you all the records from the right table, even there are no matches with the left table. The Syntax used for SQL RIGHT OUTER JOIN is given below:
SELECT column_name(s) FROM table_name1 right JOIN table_name2 ON table_name1.column_name=table_name2.column_name |
Use Right JOIN in SQL Query
The Example shows you the RIGHT JOIN in SQL Query. In this Example, we use RIGHT OUTER JOIN, which displays the records from two tables. The table contain return all record from table1,even there are no matches with the table 2.
select s.stu_id, s.stu_name, s.stu_class, l.lib_no from stu_table as s Right JOIN lib_table as l on l.stu_id = s.stu_id |
Result
Stu_Id | Stu_Name | Stu_Class | Lib_No |
1 | Komal | 10 | 101 |
2 | Ajay | 10 | 102 |
3 | Rakesh | 10 | 103 |
4 | Bhanu | 10 | 104 |
5 | Santosh | 10 | 105 |
NULL | NULL | NULL | 106 |
NULL | NULL | NULL | 107 |