Explain division operation in relational algebra (DBMS)?

Query is a question or requesting information. Query language is a language which is used to retrieve information from a database.

Query language is divided into two types −

• Procedural language

• Non-procedural language

Procedural language

Information is retrieved from the database by specifying the sequence of operations to be performed.

For Example: Relational algebra.

Structure Query language (SQL) is based on relational algebra.

Relational algebra consists of a set of operations that take one or two relations as an input and produces a new relation as output.

Types of Relational Algebra operations

The different types of relational algebra operations are as follows −

• Select operation

• Project operation

• Rename operation

• Union operation

• Intersection operation

• Difference operation

• Cartesian product operation

• Join operation

• Division operation

Union, intersection, difference, cartesian, join, division comes under binary operation (operate on two table).

Division operation

The division operator is used for queries which involve the 'all'.

R1 ÷ R2 = tuples of R1 associated with all tuples of R2.

Example

Retrieve the name of the subject that is taught in all courses.

NameCourse
SystemBtech
DatabaseMtech
DatabaseBtech
AlgebraBtech

÷

Course
Btech
Mtech

=

 Name database

The resulting operation must have all combinations of tuples of relation S that are present in the first relation or R.

Example

Retrieve names of employees who work on all the projects that John Smith works on.

Consider the Employee table given below −

NameEnoPno
John123P1
Smith123P2
A121P3

÷

Works on the following −

EnoPnoPname
123P1Market
123P2Sales

=

The result is as follows

Eno
123

The expression is as follows

Smith <- ΠPno(σEname = ‘john smith’ (employee * works on Pno=Eno))

Updated on: 06-Sep-2023

45K+ Views