S1: r1(X); r1(Y); r2(Y); r2(X); w2(Y); w1(X);
S2: r1(X); r2(X); r2(Y); w2(Y); r1(Y); w1(X);
b-Schema = (b-name, b-city, assets)
a-Schema = (a-num, b-name, bal)
d-Schema = (c-name, a-number)
Let branch, account and depositor be respectively instances of the above schemas. Assume that account and depositor relations are much bigger than the branch relation.
Consider the following query:Пc-name (σb-city = “Agra” ⋀ bal < 0 (branch $$ \Join $$ (account $$ \Join $$ depositor))
Which one of the following queries is the most efficient version of the above query ?
Consider the relation employee(name, sex, supervisorName) with name as the key, supervisorName gives the name of the supervisor of the employee under consideration. What does the following Tuple Relational Calculus query produce?
$$\eqalign{ & \{ e.name\,|\,employee(e) \wedge \cr & (\forall x)[\neg employee(x) \vee \cr & x.\sup ervisorName \ne e.name\, \vee \cr & x.sex = 'male']\} \cr} $$Information about a collection of students is given by the relation studInfo(studId, name, sex). The relation enroll(studId, courseId) gives which student has enrolled for (or taken) what course(s). Assume that every course is taken by at least one male and at least one female student. What does the following relational algebra expression represent?
$$\eqalign{ & \prod\nolimits_{courseId} {((\prod\nolimits_{studId} {({\sigma _{sex = 'female'}}} } \cr & (studInfo)) \times \prod\nolimits_{courseId} {(enroll)) - enroll)} \cr} $$