Week 6 - SQL - Join
Week 6 - SQL - Join
Week 6
Join
• A SQL Join statement is used to combine data or rows from two or more tables
based on a common field between them.
• Different types of Joins are:
1. INNER JOIN
2. LEFT JOIN
3. RIGHT JOIN
4. FULL JOIN
CARTESIAN JOIN
• In the output, each row of the table Student is joined with every row of
the table Course. The total rows in the result-set = 5 * 3 = 15.
Note: We can also write JOIN instead of INNER JOIN. JOIN is same as INNER JOIN.
Example Queries(INNER JOIN)
• This query will show the names and age of students enrolled in
different courses.
SELECT Student.NAME,Course.COURSE_ID
FROM Student
LEFT JOIN Course
ON Course.ROLL_NO = Student.ROLL_NO;
RIGHT JOIN:
• RIGHT JOIN is similar to LEFT JOIN. This join returns all the rows of the
table on the right side of the join and matching rows for the table on the
left side of join. The rows for which there is no matching row on left side,
the result-set will contain null.
• RIGHT JOIN is also known as RIGHT OUTER JOIN.
• Syntax:
SELECT table1.column1,table1.column2,table2.column1,....
FROM table1
RIGHT JOIN table2
ON table1.matching_column = table2.matching_column;
matching_column: Column common to both the tables.
• Note: We can also use RIGHT OUTER JOIN instead of RIGHT JOIN, both
are same.
Example Queries(RIGHT JOIN):
SELECT Student.NAME,Course.COURSE_ID
FROM Student
RIGHT JOIN Course
ON Course.ROLL_NO = Student.ROLL_NO;
FULL JOIN:
• FULL JOIN creates the result-set by combining result of both LEFT JOIN and RIGHT JOIN. The result-
set will contain all the rows from both the tables. The rows for which there is no matching, the result-set
will contain NULL values.
• Syntax:
SELECT table1.column1,table1.column2,table2.column1,....
FROM table1
FULL JOIN table2
ON table1.matching_column = table2.matching_column;
SELECT Student.NAME,Course.COURSE_ID
FROM Student
FULL JOIN StudentCourse
ON Course.ROLL_NO = Student.ROLL_NO;
Summary