Reputation:
What is the difference between projection and selection? Is it:
So are projection and selection vertical and horizontal slicing respectively?
Upvotes: 142
Views: 190217
Reputation: 36987
Exactly.
Projection means choosing which columns (or expressions) the query shall return.
Selection means which rows are to be returned.
If the query is:
select a, b, c from foobar where x=3;
then a, b, c
is the projection part, where x=3
the selection part.
Upvotes: 259
Reputation: 1352
Projections and Selections are two unary operations in Relational Algebra and has practical applications in RDBMS (relational database management systems).
In practical sense, yes Projection means selecting specific columns (attributes) from a table and Selection means filtering rows (tuples). Also, for a conventional table, Projection and Selection can be termed as vertical and horizontal slicing or filtering.
Wikipedia provides more formal definitions of these with examples and they can be good for further reading on relational algebra:
Upvotes: 12
Reputation: 179
Simply PROJECTION deals with elimination or selection of columns, while SELECTION deals with elimination or selection of rows.
Upvotes: 18
Reputation: 117
Projection: what ever typed in select clause i.e, 'column list' or '*' or 'expressions' that becomes under projection.
*selection:*what type of conditions we are applying on that columns i.e, getting the records that comes under selection.
For example:
SELECT empno,ename,dno,job from Emp
WHERE job='CLERK';
in the above query the columns "empno,ename,dno,job" those comes under projection, "where job='clerk'" comes under selection
Upvotes: 9