如果今天是2013年12月4日,并且我想获得6个月前创建的所有记录,我应该只检索在以下期间创建的记录: - 2013年11月 - 2013年10月 - 2013年9月 - 2013年8月 - 2013年7月 - 2013年6月 我必须按月和年分组计数
我有以下栏目:
ITEMNAME
用户名
月
年
CREATEDATE
用户可以多次创建项目或其他项目。 Month和Year列只是从CreateDate中提取的。 我希望按项目名称,月份和年份分别获得每个月(我之前说过的6个月)创建的项目数。
答案 0 :(得分:1)
试试这个,
SELECT ItemName,
UserName,
to_char(createdate, 'MM') month,
to_char(createdate, 'YYYY') year,
count(*) item_count
FROM tablename
WHERE createdate BETWEEN ADD_MONTHS(trunc(SYSDATE,'MONTH'), -6) AND LAST_DAY(TRUNC(SYSDATE, 'MONTH') - 1)
GROUP BY ItemName,UserName,to_char(createdate, 'MM'), to_char(createdate, 'YYYY')
ORDER BY month, year;