0

我有以下两个表:

reviews table:
id

visits table:
id
review_id

我正在尝试为那些至少有一次访问记录的评论显示评论列表。尝试使用 HAVING(和 GROUP)进行 LEFT OUTER JOIN,但这给了我所有访问次数的评论。计划制作这样的表格:评论 #1 - 2 次访问 评论 #2 - 10 次访问 .. 等等,忽略 0 次访问的评论

4

2 回答 2

1
select r.id,count(v.id) from reviews r inner join visits v on r.id=v.review_id 
GROUP BY v.review_id

不需要使用 LEFT JOIN,因为 INNER JOIN 只会返回匹配的记录,在这种情况下意味着将返回那些访问过的记录。

于 2012-08-02T05:59:23.783 回答
0
select 
    r.id,
    count(v.id) as Reviews
from reviews r 
left join visits v on r.id=v.review_id 
GROUP BY v.review_id
having Reviews > =1
于 2012-08-02T06:05:00.097 回答