In this tutorial, we will learn how to use INNER JOIN
keyword to join one or more tables using SQL.
INNER JOIN
Keyword returns the record When there is atleast one match on both the tables.
SELECT column1, column2,...columnN
FROM tableName1
INNER JOIN tableName2 ON tableName1.column1 = tableName2.column1;
Let us consider three tables "Employee", "Depratment" and "Designation" for records
Table Name : Employee
ID | EmpName | City | Country | Gender | Salary | DeptID | DesigID |
1 | Shankar | Delhi | India | male | 25000 | 1 | 6 |
2 | Sourabh | Delhi | India | male | 30000 | 1 | 2 |
3 | Ranvijay | Mumbai | India | male | 15000 | 2 | 3 |
4 | Kapil | Noida | India | male | 25000 | 3 | 4 |
5 | Shalini | Jaipur | India | female | 18000 | 2 | 5 |
6 | Rakesh | Faridabad | India | male | 23000 | 1 | 2 |
7 | Akshay | Mumbai | India | male | 21000 | 2 | 4 |
8 | Sarah | New York | US | female | 76000 | 3 | 1 |
9 | Rocky | Noida | India | male | 28000 | 3 | 6 |
Table: Department
DeptID | DepartmentName |
1 | IT |
2 | Finance |
3 | HR |
Table: Designation
DesigID | DesignationName |
1 | GM |
2 | Manager |
3 | CEO |
4 | Developer |
5 | Team Leader |
6 | Executive |
For selecting an employee name, department name and designation name, a query will be:
SELECT EMP.EmpName,Dept.DepartmentName,Desg.DesignationName
FROM Employee EMP
INNER JOIN Department Dept ON EMP.DeptId=Dept.DeptID
INNER JOIN Designation Desg ON EMP.DesignationId=Desg.DesigID
EmpName | DeptartmentName | DesignationName |
Shankar | IT | Executive |
Sourabh | IT | CEO |
Ranvijay | Finance | Manager |
Kapil | HR | Developer |
Shalini | Finance | Team Leader |
Rakesh | IT | Manager |
Akshay | Finance | Developer |
Sarah | HR | GM |
Rocky | HR | Executive |