无论价值存在,都可以根据月份名称获取记录

时间:2010-10-28 05:04:35

标签: php mysql

我必须从当前日期过滤最近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

以上查询无法正常工作。所以请帮助我...

1 个答案:

答案 0 :(得分:0)

创建另一个包含数字1 .. 12LEFT JOIN表格的表格。