搜档网
当前位置:搜档网 › 日期计算函数

日期计算函数

/*获取年初日期 today-今天的日期*/
SELECT TO_CHAR(trunc(to_date(:today,'YYYY-MM-DD'),'YEAR'),'YYYY-MM-DD') into :yearfirst FROM DUAL;
例如:
SELECT TO_CHAR(trunc(to_date('2010-12-10','YYYY-MM-DD'),'YEAR'),'YYYY-MM-DD') into :yearfirst FROM DUAL;

trunc(sysdate,'yyyy') --返回当年第一天.
trunc(sysdate,'mm') --返回当月第一天.
trunc(sysdate,'d') --返回当前星期的第一天.
TRUNC(89.985,2)=89.98
TRUNC(89.985)=89
TRUNC(89.985,-1)=80
注:参数为1即取整到十分位,如果是-1,则是取整到十位,以此类推;如果所设置的参数为负数,且负数的位数大于整数的字节数的话,则返回为0。

/*获取昨日的日期 today-今天的日期*/
SELECT TO_CHAR(TO_DATE(:today,'YYYY-MM-DD')-1,'YYYY-MM-DD') FROM DUAL;
例如:
SELECT TO_CHAR(TO_DATE('2010-10-10','YYYY-MM-DD')-1,'YYYY-MM-DD') FROM DUAL;


/*获取月末的日期 today-今天的日期*/
SELECT TO_CHAR(LAST_DAY(TO_DATE(:today,'yyyy-mm-dd')),'yyyy-mm-dd') into :tomon from DUAL;
例如:
SELECT TO_CHAR(LAST_DAY(TO_DATE('2010-12-10','yyyy-mm-dd')),'yyyy-mm-dd') into :tomon from DUAL;


/*获取前月的日期 today-今天的日期*/
SELECT TO_CHAR(add_months(TO_DATE(:tomon,'yyyy-mm-dd'),-1),'yyyy-mm-dd') into :yemon from DUAL;
例如:
SELECT TO_CHAR(add_months(TO_DATE('2010-12-10','yyyy-mm-dd'),-1),'yyyy-mm-dd') into :yemon from DUAL;


/*获取本月月末的日期 today-今天的日期*/
select TO_CHAR(ADD_MONTHS(LAST_DAY(TO_DATE('2010-12-10','YYYY-MM-DD')),0), 'YYYY-MM-DD') from dual;


/*获取上个月月初的日期 today-今天的日期*/
select to_char(to_date(fhts_date.chg_endmon('2010-12-10',0),'yyyy-mm-dd')-60,'yyyy-mm-dd') from dual;




相关主题