📜  门| GATE-CS-2014-(Set-3)|第65章

📅  最后修改于: 2021-06-30 01:35:28             🧑  作者: Mango

考虑以下关系模式:

employee(empId, empName, empDept)
  customer(custId, custName, salesRepId, rating)

salesRepId是引用雇员关系的empId的外键。假设每位员工至少要向一位客户进行销售。以下查询返回什么?

SELECT empName
       FROM employee E
       WHERE NOT EXISTS ( SELECT custId
                          FROM customer C
                          WHERE C.salesRepId = E.empId
                            AND C.rating <> `GOOD`);

(A)所有客户中至少有一位客户的评级为“良好”的所有员工的姓名。
(B)最多有一位客户被评为“良好”等级的所有雇员的姓名。
(C)所有客户都没有“好”评级的雇员的姓名。
(D)所有员工的名字,所有客户的评价都为“良好”。答案: (D)
说明:如果任何员工从他们的任何客户那里收到了除“良好”之外的其他评价,那么内部查询将返回一些行;
并且NOT EXISTS将返回false,因此不会打印这些员工。

只有那些所有客户都将其评定为“良好”的员工才会被打印。
这个问题的测验