oracle 常用日期函数

  D    一周中的星期几
DD    月中的第几天 Select to_char(sysdate,'DD') As 返回本月第几天 from dual
DDD    年中的第几天 Select to_char(sysdate,'DDD') As 返回本年第几天 from dual
DAY     星期的名字 Select to_char(sysdate,'DAY') As 返回星期 from dual
DY    星期的简写名 Select to_char(sysdate,'DY') As 返回星期 from dual
YYYY   四位年份 Select to_char(sysdate,'YYYY') As "四位的年份【2012年】" from dual
YYY,YY,Y    年份的最后三位,两位,一位 Select to_char(sysdate,'YYY') As "三位的年份【2012年】" from dual
HH   小时,按12小时计 Select to_char(sysdate,'HH') As "12小时制" from dual
HH24  小时,按24小时计 Select to_char(sysdate,'HH24') As "24小时制" from dual
MI   Select to_char(sysdate,'MI') As 返回分 from dual
SS   Select to_char(sysdate,'SS') As 返回当前秒 from dual
MM   Select to_char(sysdate,'MM') As 返回当前月份 from dual
Mon   月份的简写 Select to_char(sysdate,'Mon') As 返回当前月份 from dual
Month    月份的全名 Select to_char(sysdate,'Month') As 返回当前月份 from dual
W    该月的第几个星期 Select to_char(sysdate,'W') As 本月第几周 from dual
WW   年中的第几个星期  Select to_char(sysdate,'WW') As 本年的第几周 from dual
Q 年中的季度 Select to_char(sysdate,'Q') As 返回本年的季度 from dual
     常用日期操作语句
1 返回上个月最后一天 Select to_char(add_months(last_day(sysdate),-1),'yyyy-MM-dd') 返回上个月最后一天 from dual;
2 返回上个月第一天 Select to_char(add_months(last_day(sysdate)+1,-2),'yyyy-MM-dd') 返回上个月第一天 from dual;  
3 返回上个月的今天 Select to_char(add_months(sysdate,-1),'yyyy-MM-dd') 上个月的今天 from dual;
4 返回当前月第几周 Select to_char(sysdate,'WW') 返回本月第几周 from dual group by to_char(sysdate,'WW');
5 返回本年第几月 Select to_char(sysdate,'MM') 返回本年第几月 from dual group by to_char(sysdate,'MM');
6 返回本年第几季 Select to_char(sysdate,'Q') 返回本年第几季 from dual group by to_char(sysdate,'Q');
7 返回当前月份星期
为周日的日期
Select to_char(t.d, 'YY-MM-DD') 返回当前月份星期为周日的日期
  from (select trunc(sysdate, 'MM') + rownum - 1 as d
          from dba_objects
         where rownum < 32) t
 where to_char(t.d, 'MM') = to_char(sysdate, 'MM') --找出当前月份的周五的日期
   and trim(to_char(t.d, 'Day')) = '星期日'

猜你喜欢

转载自wahaha603.iteye.com/blog/1439812