Relational Algebra
Relational Algebra
Relational data model represents the logical view of how data is stored in the
relational databases. There exists some concepts related to this, which includes
the following terms.
1. Table : In relational data model , data is stored in the tables. The tables
consists of a number of rows and columns. Thus, table is used because it can
represent the data in the most simplest form possible making data retrieval
very easy.
2. Attribute : Any relation have definite properties that are called as attributes.
3. Tuple : Rows of table represents the tuple which contains the data records.
4. Domain : Domain is a set of values which is indivisible i.e. value for each
attribute present in the table contains some specific domain in which the value
needs to lie. For Example : The value of date of birth must be greater than zero.
As, it cannot be negative.
where, R Represents relation name and A1, A2, A3,…,An represents the attributes
present in the relation.
Let’s make this concept clear with an example : Consider a relation R(Roll
No, Class, Marks, Age) having some attributes as mentioned. The concept
can be drawn as:
The constraints in the relational data model are the rules and conditions that
need to be followed. These rules and conditions ensures that the relation is
valid and any changes or alterations made on data will not affect its operation.
There are three major constraints based on the relational data model which are
explained below.
For example : Consider a relation R(Roll No, Class, marks, Age) having some
attribute. If we want to fetch the details of any student, with the help of a key it
can be done.
For example : Consider two relations R1(Roll No, Name, Marks) and R2(Roll No,
Address, Age) of students of a school. Roll No being the common attribute will
act as a key for relation R1 and can reference to Roll No attribute of relation
R2 with the help of which any tuple can be retrieved from the tables.
Example:
A B C
1 2 3
4 5 6
7 8 9
6 5 4
σ(c>3)R will select the tuples which have c more than 3.
A B C
4 5 6
7 8 9
6 5 4
Note: The selection operator only selects the required tuples but does not display
them. For display, the data projection operator is used.
For example : Consider the table of relation R(Roll No, Name, Age, Marks). If
we want to select the name and age of student, then it can be done by:
B C
2 4
2 3
3 4
For example : Consider the table of relation R(Roll No, Name, Age, Marks). If
we want to project the marks column, then it can be done by :
4. The Union Operation : In order to fetch data from two relations to generate
new relation with combined capabilities, union operations can be used. The
union operation fetches the data from both tables and projects it accordingly. It
is denoted through “Union Symbol(U)”. Also, two things need to keep in mind
while applying union operation are :
Syntax : X1 U X2 , where X1 & X2 are two different relations satisfying the above two
conditions.
For example : Consider the two tables with relations X1(Name, Age) and
X2(Name, Age). If we wish to apply the union operation, then it can be done by :
5. The Set Difference Operations : In order to fetch the data which is not
present in any one of the relation, set difference operation is used. The set
difference operation is denoted by “Minus(-)”.
Syntax : A1 - A2 , where A1 & A2 are two different relations having some attributes.
For example : Consider the two tables with relations A1(Name, Roll No)and
A2(Name, Roll No). If we wish to apply the Cartesian product operation, then it
can be done by :