资源描述:
《oracle中的日期格式转化》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Oracle中的TO_DATE和TO_CHAR函数日期处理Oracle中的TO_DATE和 TO_CHAR 函数oracle中TO_DATE函数的时间格式,以2008-09-1023:45:56为例格式说明显示值备注 Year(年): yytwodigits(两位年)08 yyythreedigits(三位年)008 yyyyfourdigits(四位年)2008 Month(月): mmnumber(两位月)09 monabbreviated(字符集表示)9月若是英文版,则显示sep monthspelledout(字符集表示)9月若是英文版,则显示september D
2、ay(日): ddnumber(当月第几天)10 dddnumber(当年第几天)254 dyabbreviated(当周第几天简写)星期三若是英文版,则显示wed dayspelledout(当周第几天全写)星期三若是英文版,则显示wednesday ddspthspelledout,ordinaltwelfthtenth Hour(时): hhtwodigits(12小时进制)11 hh24twodigits(24小时进制)23 Minute(分): mitwodigits(60进制)45 Second(秒): sstwodigits(60进制)56 其他:
3、 Qdigit(季度)3 WWdigit(当年第几周)37 Wdigit(当月第几周)2 说明: 12小时格式下时间范围为:1:00:00-12:59:59(12小时制下的12:59:59对应24小时制下的00:59:59) 24小时格式下时间范围为:0:00:00-23:59:59 1.日期和字符转换函数用法(to_date,to_char)select to_char(sysdate,'yyyy-mm-ddhh24:mi:ss')asnowTimefromdual; //日期转化为字符串 select to_char(sysdate,'yyyy'
4、)asnowYear fromdual; //获取时间的年 select to_char(sysdate,'mm') asnowMonthfromdual; //获取时间的月 select to_char(sysdate,'dd') asnowDay fromdual; //获取时间的日 select to_char(sysdate,'hh24')asnowHour fromdual; //获取时间的时 select to_char(sysdate,'mi') asnowMinutefromdual; //获取时间的分 select to_
5、char(sysdate,'ss') asnowSecondfromdual; //获取时间的秒selectto_date('2004-05-0713:23:44','yyyy-mm-ddhh24:mi:ss') fromdual//2.select to_char(to_date(222,'J'),'Jsp')fromdual 显示TwoHundredTwenty-Two 3.求某天是星期几 select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day')fromdual; 星期一
6、 select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE=American')fromdual; monday 设置日期语言 ALTERSESSIONSETNLS_DATE_LANGUAGE='AMERICAN'; 也可以这样 TO_DATE('2002-08-26','YYYY-mm-dd','NLS_DATE_LANGUAGE=American') 4.两个日期间的天数 selectfloor(sysdate -t
7、o_date('20020405','yyyymmdd'))fromdual; 5.时间为null的用法 selectid,active_datefromtable1 UNION select1,TO_DATE(null)fromdual; 注意要用TO_DATE(null) 6.月份差 a_datebetweento_date('20011201','yyyy