All mock tests are FREE till 31 December — register to save your progress
Unit 4 · Database Management Systems Paper 2 CS · November 2020

Directions (Q96–100): A university database has the tables EMPLOYEE (EID, NAME, SALARY, DEPTNO, HODEID …; PRIMARY KEY EID; HODEID references EMPLOYEE(EID); DEPTNO references DEPARTMENT(DID)), DEPARTMENT (DID, DNAME, HODID; PRIMARY KEY DID; UNIQUE DNAME; HODID references EMPLOYEE(EID)) and PROJECTWORK (EMPID, PROJNO; PRIMARY KEY (EMPID, PROJNO); EMPID references EMPLOYEE(EID)).

Which of the following query/queries

return the employee ID and name of
employees whose salary is greater than

the salary of all employees in department number 20 of university? Order results by employee ID (refer to table structures given above).

(A) SELECT EID, NAME FROM EMPLOYEE WHERE SALARY>(SELECT SALARY FROM EMPLOYEE WHERE DEPTNO=20)

ORDER BY EID;
(B) SELECT EID, NAME
FROM EMPLOYEE WHERE SALARY>
(SELECT SALARY FROM EMPLOYEE
WHERE DEPTNO =20 );
(C) SELECT EID, NAME
FROM EMPLOYEE
WHERE SALARY>ALL(SELECT SALARY
FROM EMPLOYEE WHERE DEPTNO =20)
ORDER BY EID

Pick an option to check yourself, or open the answer below.

Show answer & explanation

Correct answer: D. (C) only

Explanation

A plain > comparison with a subquery that returns many rows is an error, so A and B fail. > ALL (subquery) compares with every department-20 salary, and C also orders by EID.

More Database Management Systems questions