Question
Consider a database consisting of the following tables: Person(Pname, Street, City, Cname, Salary) Primary Key :Pname Company(Cname, City, Sales) Primary Key :Cname Branch(Cname, City) Primary
Consider a database consisting of the following tables:
Person(Pname, Street, City, Cname, Salary) Primary Key :Pname
Company(Cname, City, Sales) Primary Key :Cname
Branch(Cname, City) Primary Key: Cname, City
The Person relation provides the information about a person including the name, address(street and city), the company for which the person works, and his/her salary. The Company table provides the city in which the company is headquartered plus the company's total sales. The Branch relation provides the cities in which the company has branches (might be different than HQs city).
Write expressions in Relational Algebra(RA), to retrieve answers to each of the following queries. Also, write queries in Tuple Relational Calculus(TRC) that retrieve the answers to the first three queries.
1. Find the names of all companies that have a branch in every city where Facebook also has a branch.
2. Find the names of companies headquartered in Chicago which have at least two branches in two different cities.
3. Find pairs of company names (i.e., (C1,C2)) in which both companies are headquartered in Chicago and the sales of the first company (i.e.,C1) is higher than the sales of the second company (i.e., C2).
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started