欢迎投稿

今日深度:

根据会计期间获取月度第一天,最后一天和年度

根据会计期间获取月度第一天,最后一天和年度第一天


DECLARE
  V_PERIOD_BEGIN_DATE DATE;
  V_PERIOD_END_DATE   DATE;
  V_YEAR_BEGIN_DATE   DATE;
  V_PERIOD_NAME       VARCHAR2(20) := '2015-11';
BEGIN

  SELECT TO_DATE(V_PERIOD_NAME, 'YYYY-MM', 'NLS_DATE_LANGUAGE =American')
    INTO V_PERIOD_BEGIN_DATE
    FROM DUAL;
  DBMS_OUTPUT.PUT_LINE('会计期间第一天:' || V_PERIOD_BEGIN_DATE);

  SELECT LAST_DAY(TO_DATE(V_PERIOD_NAME,
                          'YYYY-MM',
                          'NLS_DATE_LANGUAGE =American'))
    INTO V_PERIOD_END_DATE
    FROM DUAL;
  DBMS_OUTPUT.PUT_LINE('会计期间最后一天:' || V_PERIOD_END_DATE);

  SELECT TO_DATE('01-JAN-' || SUBSTR(V_PERIOD_NAME, 3, 2),
                 'DD-MON-YY',
                 'NLS_DATE_LANGUAGE =American')
    INTO V_YEAR_BEGIN_DATE
    FROM DUAL;
  DBMS_OUTPUT.PUT_LINE('年度第一天:' || V_YEAR_BEGIN_DATE);
END;
结果:
 
会计期间第一天:01-11月-15
会计期间最后一天:30-11月-15
年度第一天:01-1月 -15

www.htsjk.Com true http://www.htsjk.com/oracle/23879.html NewsArticle 根据会计期间获取月度第一天,最后一天和年度第一天 DECLARE V_PERIOD_BEGIN_DATE DATE; V_PERIOD_END_DATE DATE; V_YEAR_BEGIN_DATE DATE; V_PERIOD_NAME VARCHAR2(20) := 2015-11;BEGIN SELECT TO_DATE(V_PERIOD_NAME, YYYY-MM, NL...
相关文章
    暂无相关文章
评论暂时关闭