0% found this document useful (0 votes)
100 views9 pages

Join in DBMS

Uploaded by

santoshdvg1997
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
100 views9 pages

Join in DBMS

Uploaded by

santoshdvg1997
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

DBMS

Topperworld.in

Join in dbms

⚫ Join is an operation in DBMS(Database Management System) that


combines the row of two or more tables based on related columns between
them.

⚫ The main purpose of Join is to retrieve the data from multiple tables in
other words Join is used to perform multi-table query. It is denoted by ⨝.

Syntax:

R3 <- ⨝(R1) <join_condition> (R2)

where R1 and R2 are two relations to be join and R3 is a relation that will holds
the result of join operation.

Example:
Temp <- ⨝(student) S.roll==E.roll(Exam)

where S and E are alias of the student and exam respectively

❖ Types of Join
1) Inner Join
2) Outer join

©Topperworld
DBMS

❖ Inner join
Inner Join is a join operation in DBMS that combines two or more table based
on related columns and return only rows that have matching values among
tables.Inner join of two types.

1) Equi Join
2) Natural Join

➢ Equi join

⚫ It is also known as an inner join.


⚫ It is the most common join.
⚫ It is based on matched data as per the equality condition. The equi join uses
the comparison operator(=).

Example:

CUSTOMER RELATION

CLASS_ID NAME

1 John

2 Harry

3 Jackson

©Topperworld
DBMS

PRODUCT

PRODUCT_ID CITY

1 Delhi

2 Mumbai

3 Noida

Input:

CUSTOMER ⋈ PRODUCT

Output:

CLASS_ID NAME PRODUCT_ID CITY

1 John 1 Delhi

2 Harry 2 Mumbai

3 Harry 3 Noida

©Topperworld
DBMS

➢ Natural Join

⚫ A natural join is the set of tuples of all combinations in R and S that are
equal on their common attribute names.

⚫ It is denoted by ⋈.

Example: Let's use the above EMPLOYEE table and SALARY table:

Input:

∏EMP_NAME, SALARY (EMPLOYEE ⋈ SALARY)

Output:

EMP_NAME SALARY

Stephan 50000

Jack 30000

Harry 25000

©Topperworld
DBMS

❖ Outer Join

The outer join operation is an extension of the join operation. It is used to deal
with missing information.

Example:

EMPLOYEE

EMP_NAME STREET CITY

Ram Civil line Mumbai

Shyam Park street Kolkata

Ravi M.G. Street Delhi

Hari Nehru nagar Hyderabad

FACT_WORKERS

EMP_NAME BRANCH SALARY

Ram Infosys 10000

Shyam Wipro 20000

Kuber HCL 30000

©Topperworld
DBMS

Hari TCS 50000

Input:

(EMPLOYEE ⋈ FACT_WORKERS)

Output:

EMP_NAME STREET CITY BRANCH SALARY

Ram Civil line Mumbai Infosys 10000

Shyam Park street Kolkata Wipro 20000

Hari Nehru nagar Hyderabad TCS 50000

An outer join is basically of three types:

1. Left outer join

2. Right outer join

3. Full outer join

a. Left outer join:

➢ Left outer join contains the set of tuples of all combinations in R and S that
are equal on their common attribute names.

➢ In the left outer join, tuples in R have no matching tuples in S.

➢ It is denoted by ⟕.

©Topperworld
DBMS

Example: Using the above EMPLOYEE table and FACT_WORKERS table

Input:

EMPLOYEE ⟕ FACT_WORKERS

EMP_NAME STREET CITY BRANCH SALARY

Ram Civil line Mumbai Infosys 10000

Shyam Park street Kolkata Wipro 20000

Hari Nehru street Hyderabad TCS 50000

Ravi M.G. Street Delhi NULL NULL

b. Right outer join:

➢ Right outer join contains the set of tuples of all combinations in R and S that
are equal on their common attribute names.

➢ In right outer join, tuples in S have no matching tuples in R.

➢ It is denoted by ⟖.

Example: Using the above EMPLOYEE table and FACT_WORKERS Relation

Input:

EMPLOYEE ⟖ FACT_WORKERS

©Topperworld
DBMS

Output:

ADVERTISEMENT

EMP_NAME BRANCH SALARY STREET CITY

Ram Infosys 10000 Civil line Mumbai

Shyam Wipro 20000 Park street Kolkata

Hari TCS 50000 Nehru street Hyderabad

Kuber HCL 30000 NULL NULL

c. Full outer join:

➢ Full outer join is like a left or right join except that it contains all rows from
both tables.

➢ In full outer join, tuples in R that have no matching tuples in S and tuples in
S that have no matching tuples in R in their common attribute name.

➢ It is denoted by ⟗.

Example: Using the above EMPLOYEE table and FACT_WORKERS table

Input:

EMPLOYEE ⟗ FACT_WORKERS

©Topperworld
DBMS

Output:

EMP_NAME STREET CITY BRANCH SALARY

Ram Civil line Mumbai Infosys 10000

Shyam Park street Kolkata Wipro 20000

Hari Nehru street Hyderabad TCS 50000

Ravi M.G. Street Delhi NULL NULL

Kuber NULL NULL HCL 30000

©Topperworld

You might also like