【发布时间】:2012-02-22 00:42:16
【问题描述】:
我试图解决这个问题很长一段时间,但输出是错误的。谁能帮我这个?我正在使用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)
【问题讨论】:
-
您能提供示例输入和预期输出吗?
-
@ypercube:很好的编辑。我不确定我是否知道
relational-division标签! -
@onedaywhen:我已投票支持要合并的 2 个标签(sql-match-all 和 relational-division)
标签: mysql sql sql-match-all relational-division