| Posted by tizmagik on 04/17/07 23:18 
A little closer... I believe this would be the right SQLtheoretically, but this will only work in an Oracle DB or DB that
 supports the MINUS operation (MySQL doesnt), so I will try to
 reformulate this without using MINUS. I'm guessing it's some sort of
 JOIN operation where you check for Nulls and select those that are not
 Null...
 
 SELECT B1.CustomerID
 FROM Bought B1
 WHERE NOT EXISTS (
 ( SELECT Prefer.ItemID
 FROM Prefer, Customer
 WHERE Customer.Customer_Name = 'John'
 AND Prefer.CustomerID = Customer.CustomerID
 ) MINUS (
 SELECT B2.ItemID
 FROM Bought B2
 WHERE B2.CustomerID = B1.CustomerID )
 )
 
 Any help would be appreciated.
 [Back to original message] |