SQL -日期操作
注:建议使用时间维度表实现对日期的操作
链接 : 生成时间维度表
本季度所有月份
SELECT TO_CHAR(ADD_MONTHS(ADD_MONTHS(TRUNC(SYSDATE, 'YYYY'),A * 3),-ROWNUM),'YYYYMM') LAST_Q
FROM (SELECT TO_CHAR(SYSDATE,'Q') A FROM DUAL)
CONNECT BY ROWNUM <= 3
ORDER BY 1;
上季度所有月份
SELECT TO_CHAR(ADD_MONTHS(ADD_MONTHS(TRUNC(SYSDATE, 'YYYY'),A * 3),-ROWNUM),'YYYYMM') LAST_Q
FROM (SELECT TO_CHAR(SYSDATE,'Q')-1 A FROM DUAL)
CONNECT BY ROWNUM <= 3
ORDER BY 1;