edited by
2,893 views
23 votes
23 votes

Consider the following relational database:

  • employees (eno, ename, address, basic-salary)
  • projects (pno, pname, nos-of-staffs-allotted)
  • working (pno, eno, pjob)

The queries regarding data in the above database are formulated below in SQL. Describe in ENGLISH sentences the two queries that have been posted:

  1. SELECT ename
    FROM employees
    WHERE eno IN 
        (SELECT eno
        FROM working
        GROUP BY eno
        HAVING COUNT(*)=
            (SELECT COUNT(*)
            FROM projects))
  2. SELECT pname
    FROM projects
    WHERE pno IN
        (SELECT pno
        FROM projects
        MINUS
        SELECT DISTINCT pno
        FROM working);
    
edited by

1 Answer

Best answer
39 votes
39 votes
1.SELECT ename
  FROM employees
  WHERE eno IN 
                 (SELECT eno
                 FROM working
                 GROUP BY eno
                 HAVING COUNT (*)=
                                    (SELECT COUNT (*)
                                    FROM projects));
This will return : Employee name who is working for all projects.
(ii)
SELECT pname
FROM projects
WHERE pno IN
                 (SELECT pno
                 FROM projects
                 MINUS
                 SELECT DISTINCT pno
                 FROM working);

This will return : Project name for which no employee is working.

selected by

Related questions

19 votes
19 votes
3 answers
2
makhdoom ghaya asked Nov 23, 2016
6,312 views
Find the minimum product of sums of the following expression$f=ABC + \overline{A}\;\;\overline{B}\;\;\overline{C}$
10 votes
10 votes
2 answers
4
makhdoom ghaya asked Nov 19, 2016
2,599 views
Match the pairs in the following questions:$$\begin{array}{|ll|ll|}\hline (a) & \text{Secondary index} & (p) & \text{Function dependency} \\\hline (b) & \text{Non-proced...