Direction: Consider the following relational schemas :
Suppliers (sid : integer, sname : string, city : string, street : string)
Parts (pid : integer, pname : string, color : string)
Catalog (sid : integer, pid : integer, cost : real)
-
Consider the following relational query on the above database :
SELECT S.sname
FROM Suppliers S
WHERE S.sid NOT IN (SELECT C. sid
FROM Catalog C
WHERE C.pid NOT IN (SELECT P.pid
FROM Parts P
WHERE P.color < > ‘blue’))
Assume that relations corresponding to the above schema are not empty. Which one of the following is the correct interpretation of the above query?
-
- Find the names of all suppliers who have supplied a non-blue part
- Find the names of all suppliers who have not supplied a non-blue part
- Find the names of all suppliers who have supplied only blue parts
- Find the names of all suppliers who have not supplied only blue parts
- Find the names of all suppliers who have supplied a non-blue part
Correct Option: A
S name is selected form Supplier S. Now this S.sid should not be in C.sid of Catalog C.
Therefore, it will find the names of all suppliers who have supplied a non-blue part.