First time here? Checkout the FAQ!
+9 votes

Consider the relational schema given below, where eId of the relation dependent is a foreign key referring to empId of the relation employee. Assume that every employee has at least one associated dependent in the dependent relation.

employee (empId, empName, empAge)

dependent(depId, eId, depName, depAge)

Consider the following relational algebra query:

$\Pi_{empId}\:(employee) - \Pi_{empId}\:(employee \bowtie_{(empId=eID) \wedge (empAge \leq depAge)} dependent)$

The above query evaluates to the set of empIds of employees whose age is greater than that of

  1. some dependent.
  2. all dependents.
  3. some of his/her dependents.
  4. all of his/her dependents.
asked in Databases by Veteran (75.6k points)   | 633 views

2 Answers

+20 votes
Best answer
(D) all of his/her dependents.

The inner query selects the employees whose age is less than or equal to at least one of his dependents. So, subtracting from the set of employees, gives employees whose age is greater than all of his dependents.
answered by Veteran (280k points)  
What's wrong in option B.Its also selecting all dependents value.
if $empId=eID$ this condition won't be there in question, then answer will be B. But in this case if any employee E1 is selected that means E1 age is greater than all of E1's dependent, E1 age might be smaller/greater than E2's dependent.
–2 votes

(C) some of his/her dependents

consider the qN as A-B

B select all the empID with age which is less than all his dependends

so subtracting above from the universal set give the opposite of which is "empID with age greater than atleast one of his dependents"

answered by Loyal (3.1k points)  

Procedure is correct. But
"B select all the empID with age which is less than all his dependends" 

is wrong. Select statement returns empID even if it is true for at least one of the dependent. So, in B it is "some" and in A-B it will be "All"


Related questions

Top Users Feb 2017
  1. Arjun

    5288 Points

  2. Bikram

    4230 Points

  3. Habibkhan

    3952 Points

  4. Aboveallplayer

    3086 Points

  5. Debashish Deka

    2378 Points

  6. sriv_shubham

    2308 Points

  7. Smriti012

    2236 Points

  8. Arnabi

    2008 Points

  9. mcjoshi

    1690 Points

  10. sh!va

    1684 Points

Monthly Topper: Rs. 500 gift card

20,860 questions
26,012 answers
22,114 users