INNER JOIN(or JOIN) returns only the matching rows between two tables. By default 'JOIN' keyword is treated as 'INNER JOIN'.
SELECT column_name(s) FROM table1 JOIN table2 ON table1.column_name = table2.column_name;
• 'table1' and 'table2' refer to the two tables being joined together.
• 'column_name(s)' refer to the selected columns from the tables being joined together.
• 'ON' clause is used to specify the conditions for joining two or more tables together.
As seen in above image, SQL inner join produces a result set that includes only the rows that exist in both 'Table-A' and 'Table-B'.
Let's suppose we have two tables :
[a] Employees Table :
→ It contains columns [Employee_Id], [Employee_Name], [Gender] and [Department_Id].
[b] Departments Table :
→ It contains columns [Department_Id] and [Department_Name].
1. Let's use SQL inner join to retrieve the employees names and their respective department names by joining the [Employees] and [Departments] tables together based on matching values in both the tables.
2. Please run the following SQL statement :
SELECT Emp.Employee_Name, Emp.Department_Id, Dpt.Department_Name FROM [Employees] Emp INNER JOIN [Departments] Dpt ON Emp.Department_Id = Dpt.Department_Id
3. Above statement selects the columns from both tables based on the matching values in the 'Department_Id' column and returns the resulting data as the output.
• As you have seen, Only specific selected columns ( [Employee_Name], [Department_Id] from "Employees" table and [Department_Name] from "Departments" table ) are returned.
• It returned only the rows where the [Department_Id] column has values of '1' or '2' because these are the only values that exist in both tables.
That's it! You have successfully retrieved data using 'INNER JOIN' statement.
Inner joins in SQL combine rows from two or more tables based on a related column between them.
Inner join in SQL operates between two or more tables to return only the matching rows.
The four types of joins in SQL are inner join, left join, right join, and full outer join.
To use three inner joins in SQL, specify the tables involved and the join conditions using the INNER JOIN clause for each pair of tables being joined.