Salve ragazzi ho un dubito in un esercizio dove queste sono le tabelle:
Suppliers(sid(chiave),sname,address)
Parts(pid(chiave),pname,color)
Catalog(sid(chiave esterna),pid(chiave esterna),cost)
la traccia dice Trova i sid dei supplier che forniscono qualche part Red oppure sono al “221 Parcker Street
la mia soluzione è stata :
SELECT sid
FROM Suppliers,Parts,Catalogs
WHERE color="red" AND address=221 Parcker Street AND Suppliers.sid=Catalog.sid AND Parts.pid=Catalog.pid
mentre nella slide della mia prof viene proposta un'altra soluzione che a mio avviso fa la stessa identica cosa ma non sono completamente sicuro
questa è la sua soluzione:
SELECT S.sid
FROM Supplier AS S
WHERE S.address=‘221 Parker Street’
OR S.sid IN (SELECT C.sid
FROM Parts AS P, Catalog AS C
WHERE P.color=‘red’ AND P.pid=C.pid);