0
我有3个表users(name, email), reviews(review, entity, user) and votes(vote, entity, user)
,我想做一个查询,返回给定的特定实体的所有评论,如果用户已经投票支持该实体,则从投票表投票,否则null应该在那里在投票的地方。我写的查询是加入3个表sql加入
select users.name as name,
reviews.review as review,
votes.vote as vote
from
users join reviews on users.email=reviews.user
left join votes on users.email=votes.user
where reviews.entity='entity_id'
但这查询导致了一些评论多行, 我做了它的工作使用GROUP BY,由我无法理解的左连接行为,
by子句记住组作为OP说:“但这查询导致了一些评论多行,我做了它的工作通过使用组......” – danihp 2012-07-28 15:33:14
感谢名单,其工作... :) – Sourabh 2012-07-28 15:35:38
我窝uld必须看到工作版本,但我怀疑通过添加一个group来验证结果是否正确。该查询仍然在查找实体'entity_id'的评论,但是会为来自同一用户的任何实体投票。 – Carl 2012-07-28 15:37:37