Professional Documents
Culture Documents
OPERATIONS
4th July 2020
Aggregate Functions
• An aggregate function performs a calculation on a set of values, and returns a single value.
• These functions are used in simple statistical queries that summarize information from the database
tuples.
• Aggregate functions are often used with the GROUP BY clause of the SELECT statement.
Grouping
• Another common type of request involves grouping the tuples in a relation by the value of some of
their attributes and then applying an aggregate function independently to each group.
• The resulting relation has the grouping attributes plus one attribute for each element in the
function list.
EXAMPLE
EXAMPLE
Example
Suppose we have the following relational database:
• employee (person name, street, city)
• works(person name, company name, salary)
• company (company name, city)
(a) Find the names of all employees who live in city ‘Miami’.
(b) Find the names of all employees whose salary is greater than $100,000.
(c) Find the names of all employees who live in ‘Miami’ and whose salary is greater than $100,000.
(d) Find the names of all employees who work for “First Bank Corporation”.
(e) Find the names and cities of residence of all employees who work for “First Bank Corporation”.
(f) Find the names, street address, and cities of residence of all employees who work for “First Bank Corporation” and
earn more than $10,000.
Example
Suppose we have the following relational database:
• employee (person name, street, city)
• works(person name, company name, salary)
• company (company name, city)
(a) Find the names of all employees who live in city ‘Miami’.
Πperson name(σcity=’Miami’(employee))
(b) Find the names of all employees whose salary is greater than $100,000.
Πperson name(σsalary>100000(works)
(c) Find the names of all employees who live in ‘Miami’ and whose salary is greater than $100,000.
(d) Find the names of all employees who work for “First Bank Corporation”.
(e) Find the names and cities of residence of all employees who work for “First Bank Corporation”.
(f) Find the names, street address, and cities of residence of all employees who work for “First Bank Corporation”
and earn more than $10,000.
student(id, name)
enrolledIn(id, code)
subject(code, lecturer)
12. What are the names of students taking a subject taught by Roger.
13. What are the names of students who are taking a subject not taught by Roger?
Example
Give the following queries in the relational algebra using the relational schema
student(id, name)
enrolledIn(id, code)
subject(code, lecturer)
12. What are the names of students taking a subject taught by Roger.
13. What are the names of students who are taking a subject not taught by Roger?