2015-07-21 40 views
3

我有4个表如何获取每篇文章的视图?

articles 
category 
article_category 
view 

我需要找到观看次数为每篇文章 下面是我的SQL查询

SELECT a.id, 
(SELECT SUM(view) FROM view v ON v.aid=a.id) as view 
FROM articles a JOIN article_category ac ON a.id 
ON ac.aid JOIN category c ON c.id=ac.cid 
LEFT JOIN view cv ON v.aid=a.id GROUP BY a.id 

我guestion是,如果有不使用额外的SELECT查询其他的方法呢?

+0

category和article_category与它有什么关系?看起来你只需要文章和视图? – dsas

+0

文章属于类别一篇文章可以属于超过1类我加入类别表导致我检查类别状态等 – user3311313

回答

0

看来你只需要从子查询中取出数据并使用它。

Select a.ID,SUM(cv.view) 
FROM articles a 
JOIN article_category ac ON a.id = ac.aid 
JOIN category c ON c.id=ac.cid 
LEFT JOIN view cv ON v.aid=a.id GROUP BY a.id 
+0

我有一篇文章属于类别它不工作得到重复 – user3311313

相关问题