169it -->


 
当前位置:  数据库>oracle

ORACLE日期相关操作

 
分享到:
    发布时间:2014-1-13  


    取日期:select add_months(sysdate,-1) from dual求当前年第一天 select trunc(sysdate,'yyyy') from dual; 求当前月第一天 select trunc(sysdate,'mm') from dual; 求当前周第一天 select trunc(sysdate,'d') from dual; 求月天数 select...

取日期:

select add_months(sysdate,-1) from dual

求当前年第一天 select  trunc(sysdate,'yyyy') from dual; 求当前月第一天 select  trunc(sysdate,'mm') from dual; 求当前周第一天 select  trunc(sysdate,'d') from dual; 求月天数 select to_char(last_day(sysdate),'dd') from dual; 求年天数 select trunc(add_months(sysdate,12),'yyyy')-trunc(sysdate,'yyyy') nts from dual; 求当前月所在季度 select to_char(sysdate,'q') from dual; 求当天是星期几 select to_char(sysdate,'dy') rq from dual; 求当前周是当月第几周 select to_char(sysdate,'w') rq from dual; 求当前周是今年第几周 select to_char(sysdate,'ww') rq from dual; 求当前季度第一天 select trunc(sysdate,'q') from dual; 列出当月所有日期 select trunc(sysdate,'mm') +rownum-1 from dual connect by rownum<=to_char(last_day(sysdate),'dd'); 列出当年所有日期 select trunc(sysdate,'yyyy')+rownum-1 from dual connect by rownum<=365;

TO_DATE()函数中相关的参数说明:

Day: dd 两位数字格式,最大为31 dy 礼拜几的英文缩写格式,例如礼拜5缩写为fri day 礼拜几的英文格式,例如礼拜5就是friday ddspth spelled out, ordinal twelfth Month: mm 两位数字格式,最大为12 mon 英文月份的缩写格式,例如3月march缩写为mar month 英文月份的全拼形式,例如3月就是march Year: yy 两位数字格式,例如98表示1998年 yyyy 四位数字格式,例如1998表示1998年

Hour:

hh12 表示12小时计时

hh24 表示24小时计时

Minute:

mi 表示分钟

Second:

ss 表示秒数

TO_DATE()和TO_CHAR()函数使用

select to_char( to_date(222,'J'),'Jsp') from dual

显示Two Hundred Twenty-Two

ALTER SESSION SET NLS_DATE_LANGUAGE='AMERICAN';

也可以这样

TO_DATE ('2002-08-26', 'YYYY-mm-dd', 'NLS_DATE_LANGUAGE = American')

a_date between to_date('20011201','yyyymmdd') and to_date('20011231','yyyymmdd')

那么12月31号中午12点之后和12月1号的12点之前是不包含在这个范围之内的。

所以,当时间需要精确的时候,觉得to_char还是必要的




本类别最新文章推荐:


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2015,169IT.COM,站长邮箱:www_169it_com#163.com(请将#改为@)

浙ICP备11055608号


-->