SELECT Operation in Relational Algebra

Prerequisite – Relational Algebra
Select operation chooses the subset of tuples from the relation that satisfies the given condition mentioned in the syntax of selection. The selection operation is also known as horizontal partitioning since it partitions the table or relation horizontally.

Notation:

σ c(R)

where ‘c’ is selection condition which is a boolean expression(condition), we can have a single condition like Roll= 3 or combination of condition like X>2 AND Y<1,
symbol ‘σ (sigma)’ is used to denote select(choose) operator,

R is a relational algebra expression, whose result is a relation. The boolean expression specified in condition ‘c’ can be written in the following form:

<attribute name> <comparison operator> <constant value> or <attribute name>

where, <attribute name> is obviously name of an attribute of relation,



<comparison operator> is any of the operator {<, >, =, <=, >=, !=} and,
<constant value> is constant value taken from the domain of the relation. 

Example-1:

σ Place = 'Mumbai' or Salary >= 1000000 (Citizen)
σ Department = 'Analytics'Location = 'NewYork'(Manager))

The query above(immediate) is called nested expression, here, as usual, we evaluate the inner expression first (which results in relation say Manager1), then we calculate the outer expression on Manager1(the relation we obtained from evaluating the inner expression), which results in relation again, which is an instance of a relation we input.

Example-2:

Given a relation Student(Roll, Name, Class, Fees, Team) with the following tuples:

Roll Name Department Fees Team
1 Bikash CSE 22000 A
2 Josh CSE 34000 A
3 Kevin ECE 36000 C
4 Ben ECE 56000 D

Select all the student of Team A :



σ Team = 'A' (Student)

Roll Name Department Fees Team
1 Bikash CSE 22000 A
2 Josh CSE 34000 A

Select all the students of department ECE whose fees is greater then equal to 10000 and belongs to Team other than A.

σ Fees >= 10000Class != 'A' (Student))

Roll Name Department Fees Team
3 Kevin ECE 36000 C
4 Ben ECE 56000 D

Important points about Select operation :
Select operator is Unary, means it it applied to single relation only. Selection operation is commutative that is,

σ c1c2(R)) = σ c2c1(R))

The degree (number of attributes) of resulting relation from a Selection operation is same as the degree of the Relation given. The cardinality (number of tuples) of resulting relation from a Selection operation is,

0 <= σ c (R) <= |R|

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.