2013-11-26 53 views
0

查詢1:這兩個SQL查詢有什麼區別?

SELECT Frequents.drinker FROM Frequents 
WHERE Frequents.drinker NOT IN ( 
SELECT F.drinker FROM Frequents AS F 
WHERE F.bar NOT IN 
( 
    SELECT bar FROM Sells, Likes WHERE Sells.beer = Likes.beer AND Likes.drinker = F.drinker 
)  
) 

QUERY 2:

SELECT Frequents.drinker FROM Frequents, Sells, Likes 
Where Frequents.drinker = Likes.drinker and Sells.bar IN(
    SELECT bar from Sells where Sells.beer = Likes.beer) 

關係模式

enter image description here 注:忽略拼寫錯誤。

其中上述查詢的是正確的「打印飲水服務於一些啤酒,他們喜歡 經常只吧。(假設每個 飲酒喜歡至少一個啤酒流連至少一個吧。)」

回答

0

第一季度發現飲酒者在酒吧銷售啤酒。

第二季度發現不喝酒的酒吧不賣啤酒。

它可能但不一定意味着同樣的事情。

這是轉讓嗎?

+0

Q1是分配的解決方案,Q2是我提交的內容,我相信我的查詢版本是正確的。 –

0

第一條SQL語句似乎選擇了經常飲酒者去酒吧,不服務他們的首選啤酒。

第二條SQL語句列出了經常喝酒的酒吧,他們會出售他們喜歡的啤酒。