加入3个表SQL
问题描述:
我想解决这个问题很长一段时间,输出是错误的。谁能帮我这个?我正在使用mysql,所以完全连接不起作用。谢谢yyou加入3个表SQL
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)
如果它不起作用,你可以发布一些你的数据的例子吗?
这是功课吗? – 2012-01-30 06:51:46
您能提供样品输入和预期输出吗? – 2012-01-30 10:12:32
@ypercube:很好的编辑。我不确定我是否知道'关系分割'标签! – onedaywhen 2012-01-30 13:13:47