Subquery
比較不同表中值的位置
SQL 新手。希望找到與鮑勃(客戶)位於同一區域的餐廳出售的獨特披薩。
數據庫架構:
客戶(cname, area)
餐廳(rname, area)
比薩(披薩)
Sells(rname,pizza,price)
喜歡(cname,披薩)
SELECT distnct pizza FROM Sells WHERE rname in ( SELECT rname FROM Restaurants WHERE area..... -- This is the part where i don't know how to continue. -- How do i write it so that i compare the location of the restaurant with bob's location? );
在我看來,一個
INNER JOIN
和EXISTS
應該做的組合:SELECT DISTINCT(s.pizza) FROM dbo.Sells s INNER JOIN dbo.Restaurants r ON s.rname = r.rname WHERE EXISTS(SELECT 1 FROM dbo.Customers WHERE cname = 'bob' AND area = r.area) ;