最佳可行,附上另外一种方法,返回的结果是date类型的
select add_months(to_date(tochar(sysdate,'yyyy'),'yyyy'),-11) from dual
或者
select to_date(tochar(sysdate,'yyyy')||'01','yyyy-mm') from dual
当年第一个月
SQL> select to_char(sysdate,'yyyy')||'01' from dual;
TO_CHA
------
201501
当前年,月
SQL> select to_char(sysdate,'yyyymm') from dual;
TO_CHA
------
201503
select to_date(sysdate,'YYYYMM') from dual
SELECT
TO_NUMBER(TO_CHAR(TRUNC(TO_DATE(201710,'YYYY-MM'),'YYYY'),'YYYYMM'))
FROM DUAL;