TheHingineer

  • DBMS


  • DBMS Part-1

  • DBMS Part-2

  • DBMS Part-3

  • DBMS Part-4

  • DBMS Part-5

  •  Joins in DBMS 

    Jab data alag-alag tables mein store kiya jaata hai, tab un tables ko ek saath laane ke liye Join use kiya jaata hai.

    Join ek SQL operation hai jo 2 ya usse zyada tables ke rows ko combine karta hai based on koi common column.


     Join kyun use karte hain?

    Maan lo aapke paas 2 tables hain:

    1. Students – jisme student ke naam aur department ID hai.

    2. Departments – jisme department ka naam hai.

    Ab aap chahte ho ki har student ke saath uska department ka naam bhi dikhe — ye possible hoga Join ki madad se.

     Example Tables

     Table: Students

    StudentID Name DeptID
    1 Riya 101
    2 Aman 102
    3 Nidhi 103

     Table: Departments

    DeptID DeptName
    101 Computer Sci
    102 Mechanical
    104 Civil

     Types of Joins

    1. INNER JOIN

    Sirf wahi rows dikhata hai jahan dono tables mein matching value hoti hai.

    SQL Example:

    SELECT Students.Name, Departments.DeptName
    FROM Students
    INNER JOIN Departments
    ON Students.DeptID = Departments.DeptID;

    Result:

    Name DeptName
    Riya Computer Sci
    Aman Mechanical

    Diagram:

    Students Departments
    +--------+     +--------+
    | DeptID |     | DeptID |
    +--------+     +--------+
    | 101    | --> | 101    |  Match
    | 102    | --> | 102    |  Match
    | 103    | --> | (Not Found)| No Match

    2. LEFT JOIN (LEFT OUTER JOIN)

    Left table (Students) ke sabhi rows show karega, aur right table (Departments) ke sirf matching rows. Match na ho toh NULL show karega.

    SQL Example:

    SELECT Students.Name, Departments.DeptName
    FROM Students
    LEFT JOIN Departments
    ON Students.DeptID = Departments.DeptID;

    Result:

    Name DeptName
    Riya Computer Sci
    Aman Mechanical
    Nidhi NULL

    3. RIGHT JOIN (RIGHT OUTER JOIN)

    Right table (Departments) ke sabhi rows show karega, aur left table (Students) ke sirf matching rows. Match na ho toh NULL show karega.

    SQL Example:

    SELECT Students.Name, Departments.DeptName
    FROM Students
    RIGHT JOIN Departments
    ON Students.DeptID = Departments.DeptID;

    Result:

    Name DeptName
    Riya Computer Sci
    Aman Mechanical
    NULL Civil

    4. FULL OUTER JOIN

    Dono tables ke sabhi rows show karega — match ho toh dono ka data, warna NULL jahan match nahi ho.

    Note: MySQL mein direct support nahi hota, par PostgreSQL, SQL Server mein hota hai.

    Result:

    Name DeptName
    Riya Computer Sci
    Aman Mechanical
    Nidhi NULL
    NULL Civil

    5. CROSS JOIN

    Dono tables ke sabhi combinations deta hai — har row of table 1 ke saath table 2 ki har row.

    SQL Example:

    SELECT Students.Name, Departments.DeptName
    FROM Students
    CROSS JOIN Departments;

    Agar 3 students × 3 departments = 9 rows banengi


     Join Types Summary

    Join Type Non-Matching Rows? Use Case
    INNER JOIN  Nahi Sirf matching data chahiye
    LEFT JOIN  Left table ka sab Sabhi students dikhane ke liye
    RIGHT JOIN  Right table ka sab Sabhi departments dikhane ke liye
    FULL OUTER JOIN  Dono ka Sab kuch dikhana ho
    CROSS JOIN  Match ki zarurat nahi Sabhi combinations ke liye

     Conclusion

    Joins help karte hain:

    • -> Alag-alag tables ka data combine karne mein.

    • -> Structured aur normalized data ko ek saath dikhane mein.

    • -> Query ko zyada meaningful aur powerful banane mein.

    Scroll to Top