1
我需要重量多少活动已经在一个WordPress的博客。假设有一天有3个帖子和10个评论,评论中评为10分,评论评分仅为1分,然后说当天共有40分。但是,可能会有几天没有发布任何活动或没有评论活动。WordPress的 - 获取帖子数量和白天的评论
我的第一个想法是从帖子到评论表的一个简单的LEFT JOIN
。但是,这将排除没有帖子的日子。我不是MySQL大师,但我一直在研究,似乎解决这个问题的最好方法是使用FULL OUTER JOIN
(explained by Jeff Atwood),但MySQL不支持这一点!
然后,实际上有a workaround,但它不适合我。看起来RIGHT OUTER JOIN
没有返回我所需要的。
这是LEFT
之一,它的作品相当不错。
SELECT
DISTINCT DATE(post_date) AS day,
COUNT(ID) AS post_total,
COUNT(comment_ID) as comment_total,
(COUNT(ID)*10 + COUNT(comment_ID)*1) AS total
FROM wp_posts
LEFT OUTER JOIN wp_comments ON
DATE(post_date) = DATE(comment_date)
GROUP BY day ORDER BY total DESC
但是RIGHT
之一有问题。
SELECT
DISTINCT DATE(post_date) AS day,
COUNT(ID) AS post_total,
COUNT(comment_ID) as comment_total,
(COUNT(ID)*10 + COUNT(comment_ID)*1) AS total
FROM wp_posts
RIGHT OUTER JOIN wp_comments ON
DATE(post_date) = DATE(comment_date)
GROUP BY day ORDER BY total DESC
因此,UNION
解决方法是无用的。
我在做什么错?有没有更简单的方法来做到这一点?
谢谢。
注意:您必须在不同日期添加一些帖子和评论。
除非你犯了一个错字,当你转录本,问题与你的右连接是它是一个左连接... – 2011-02-11 23:37:55