我试图解决这个问题已经有一段时间了,结果是错误的。有人能帮我吗?我正在使用mysql,所以完全连接不起作用。谢谢你
3张桌子:
Frequents (attributes: drinker, bar, times_a_week),
Likes (attributes: drinker, beer),
Serves (attributes: bar, beer, price),
这个问题问的是那些经常在“每家”酒吧提供他们喜欢的啤酒的所有饮酒者
我的回答是这样的:
SELECT drinker
FROM frequents
WHERE drinker NOT IN (SELECT f.drinker FROM frequents f
JOIN likes l ON f.drinker=l.drinker
LEFT JOIN serves s ON l.beer=s.beer
AND s.bar=f.bar
WHERE s.bar IS NULL)
最佳答案
这个怎么样:
select *
from Frequents
where bar in (select bar from Serves S join Likes L on S.beer=l.beer)
如果它不起作用,你能发布一些你的数据的例子吗?