210 likes | 305 Vues
Learn about Relational Algebra and its operators for querying databases, including select, project, union, and intersection operations. Explore the fundamentals of query languages and their application in database management.
E N D
Session 3 Welcome: To session 3-the second learning sequence “ Relational algebra “ Recap : In the previous learning sequences, we discussed the relational model. Present learning: We shall explore the following topics: - Relational algebra. - Some operators.
Query Languages • Language in which user requests information from the database. • Categories of languages • procedural • non-procedural • “Pure” languages: • Relational Algebra • Tuple Relational Calculus • Domain Relational Calculus • Pure languages form underlying basis of query languages that people use.
Relational Algebra • Procedural language • Four basic operators • select • project • union • Intersection • The operators take one or more relations as inputs and give a new relation as a result.
Select Operation Notation: p(r) p is called the selection predicate Defined as: p(r) = {t | t rand p(t)} Where p is a formula in propositional calculus consisting of terms connected by : (and), (or), (not)Each term is one of: <attribute> op <attribute> or <constant> where op is one of: =, , >, . <. Example of selection:branch-name=“Perryridge” (account)
Select Operation – Example Account
Select Operation – Example The result is the relation: 7
Select Operation – Example Balance >“700” (account) 8
Project Operation Notation:A1, A2, …, Ak (r) where A1, A2 are attribute names and r is a relation name. The result is defined as the relation of k columns obtained by erasing the columns that are not listed Duplicate rows removed from result, since relations are sets
Project Operation E.g. To eliminate the branch-name attribute of accountaccount-number, balance (account) The result relation is:
Union Operation • Notation: r s • Defined as: r s = {t | t r or t s} • For r s to be valid. 1. r,s must have the same arity (same number of attributes) 2. The attribute domains must be compatible (e.g., 2nd column of r deals with the same type of values as does the 2nd column of s)
Union Operation E.g. to find all customers with either an account or a loancustomer-name (depositor) customer-name (borrower) depositor borrower
Union Operation • customer-name (depositor) customer-name (borrower)
Union Operation • The result relation is:
Intersection Operation • Notation: r s • Defined as: • rs ={ t | trandts } • Assume: • r, s have the same arity • attributes of r and s are compatible • Note: rs = r - (r - s)
Intersection Operation E.g. to find all customers with an account and a loancustomer-name (depositor) customer-name (borrower) depositor borrower
Intersection Operation • customer-name (depositor) customer-name (borrower)
Intersection Operation The result relation is:
Relational Algebra Summary: In this learning sequence, we discussed Four basic operators of the topic relational algebra.