SQL Count另一个表中的行和连接

时间:2017-07-07 01:48:34

标签: mysql sql

我的数据库中有2个表。第一个是comments,另一个是comments_votes。 我想选择所有评论,并为每条评论从comments_votes中选择所有评论,将它们加在一起,然后将其作为totalVote加入第一个查询。

我的comments表格如下:

id      comment      video_id   date_sent
----------------------------------------
5      "...."           99        "2017-05-23"
18      "...."          99        "2017-05-23"

comments_votes表格如下:

id      user_id      comment_id   vote
----------------------------------------
45         86           5         1
45         23           5         1
78         12            18        -1 

最终希望的结果如下:

id      comment   video_id   votes_total
----------------------------------------
5      " ... "      99             2
18      "... "      99           -1

我可以管理简单的SQL操作,但这超出了我的范围。这样的事情甚至可能吗?如果是,怎么样?

2 个答案:

答案 0 :(得分:2)

select C.id, C.Comment, C.Video_ID, SUM(V.Votes) AS Vote_total 
from comments C 
left outer join comments_votes V 
on C.id=V.comment_id
group by C.id, C.Comment, C.Video_ID

答案 1 :(得分:0)

SELECT c.id,comment,c.video_id,SUM(v.vote) AS Vote_total 
FROM comments c, comments_votes v
WHERE c.id = v.comment_id
GROUP BY C.id, C.Comment, C.Video_ID;