In this tutorial, we will learn how to use SELF JOIN using SQL.
SELF JOIN is a join in which a table is joined with itself.SELF JOIN compares values of the same or different columns in the same table.SELECT column(s)
FROM tableName1 T1,tableName1 T2
WHERE CONDITION;
Let us consider this table "Employee" for records.
Table Name: Employee
| ID | EmpName | City | Country | Gender | Salary | 
| 1 | Shankar | Delhi | India | male | 25000 | 
| 2 | Sourabh | Delhi | India | male | 30000 | 
| 3 | Ranvijay | Mumbai | India | male | 15000 | 
| 4 | Kapil | Noida | India | male | 25000 | 
| 5 | Shalini | Jaipur | India | female | 18000 | 
| 6 | Rakesh | Faridabad | India | male | 23000 | 
| 7 | Akshay | Mumbai | India | male | 21000 | 
| 8 | Sarah | New York | US | female | 76000 | 
| 9 | Rocky | Noida | India | male | 28000 | 
This SQL statement matches employee that are from the same city, a query Will be:
SELECT A.EmpName AS EmpName1, B.EmpName AS EmpName2, A.City
FROM Employee A, Employee B
WHERE A.ID <> B.ID
AND A.City = B.City 
ORDER BY A.City;
| EmpName1 | EmpName2 | City | 
| Shankar | Sourabh | Delhi | 
| Sourabh | Shankar | Delhi | 
| Akshay | Ranvijay | Mumbai | 
| Ranvijay | Akshay | Mumbai | 
| Rocky | Kapil | Noida | 
| Kapil | Rocky | Noida |