在MySQL中加入4个表来检索数据。
我需要加入4个表格的最佳方式:
1。用户
ID NAME
1 me
2 you
3 her
2。制品
ID USER_ID ARTICLE
1 1 etc
2 1 etc
3 2 third
第3。 Article_comments
ID ARTICLE_ID COMMENT
1 1 etc
2 1 etc
3 3 etc
4。文章要点
ID ARTICLE_ID POINTS
1 1 100
2 1 200
3 2 50
4 2 10
我需要一种方法来加入它们来检索:
ARTICLE | USERNAME | TOTAL COMMENTS PER ARTICLE | TOTAL POINTS PER ARTICLE
例如:对于第1条:etc | me | 2 | 350
对于2:etc | you | 0 | 60
,所以对所有人都是一个。
答案 0 :(得分:0)
SELECT
Articles.ID,
Articles.USER_ID,
Articles.ARTICLE,
Users.NAME,
COUNT(Article_comments.ID) AS `num_comments`,
SUM(Article_points.POINTS) AS `points`
FROM
Articles
INNER JOIN
Users
ON
Articles.USER_ID = Users.ID
LEFT OUTER JOIN
Article_comments
ON
Article_comments.ARTICLE_ID = Articles.ID
LEFT OUTER JOIN
Article_points
ON
Article_points.ARTICLE_ID = Articles.ID
GROUP BY
Articles.ID
答案 1 :(得分:0)
这也是我所做的,但对于有更多评论和观点的记录却无法正常工作。对于EX上面的interogation,第1条将返回:
ID USER_ID文章名称num_comments点 1 1等我4 600