我必须从当前日期过滤最近3个月的数据,这样才能从8月到10月获取数据。但是10月份的值仅存在于mysql表中,所以现在我想以下列格式显示记录: / p>
Month Values
Aug 0
Sept 0
Oct 10
但我的查询仅显示10月份的记录,因为我没有前2个月的记录。 我怎样才能做到这一点。以下是我的询问。
SELECT
CASE WHEN COUNT(DISTINCT(user_analytics_id)) > 0 THEN COUNT(DISTINCT(user_analytics_id)) ELSE 0 END as pic_views,
YEAR(user_profile_viewed_date) AS pic_viewed_year,
MONTHNAME(user_profile_viewed_date) as pic_viewed_month
FROM (`user_analytics`)
WHERE `user_id` = '1' AND `view_type` = 'picture'
AND `user_profile_viewed_date` BETWEEN '2010-07-28 04:23:56' AND '2010-10-28 04:23:56'
GROUP BY MONTH(user_profile_viewed_date) ORDER BY MONTH(user_profile_viewed_date) ASC
以上查询无法正常工作。所以请帮助我...
答案 0 :(得分:0)
创建另一个包含数字1 .. 12
和LEFT JOIN
表格的表格。