平常工作中与date操作关系最大的就是两个转换函数:to_date(),to_char()
多种日期格式:
YYYY:四位表示的年份
YYY,YY,Y:年份的最后三位、两位或一位,缺省为当前世纪
MM:01~12的月份编号
MONTH:九个字符表示的月份,右边用空格填补
MON:三位字符的月份缩写
WW:一年中的星期
D:星期中的第几天
DD:月份中的第几天
DDD:年所中的第几天
DAY:九个字符表示的天的全称,右边用空格补齐
HH,HH12:一天中的第几个小时,12进制表示法
HH24:一天中的第几个小时,取值为00~23
MI:一小时中的分钟
SS:一分钟中的秒
SSSS:从午夜开始过去的秒数
to_char():将日期转按一定格式换成字符类型
1.to_date():作用将字符类型按一定格式转化为日期类型
具体用法:to_date(’‘2004-11-27’’,’‘yyyy-mm-dd’’),前者为字符串,后者为转换日期格
注意,前后两者要以一对应。
比如:to_date(’‘2004-11-27 13:34:43’’, ‘‘yyyy-mm-dd hh24:mi:ss’’) 将得到具体的时间
SQL>select to_date(‘2003-10-17 21:15:37’,‘yyyy-mm-dd hh24:mi:ss’) from dual
2.to_char():将日期转按一定格式换成字符类型
SQL> select to_char(sysdate,’‘yyyy-mm-dd hh24:mi:ss’’) time from dual;
TIME
-------------------
2004-10-08 15:22:58
即把当前时间按yyyy-mm-dd hh24:mi:ss格式转换成字符类型
to_char(1210.73, ‘9999.9’) | would return ‘1210.7’ |
---|---|
to_char(1210.73, ‘9,999.99’) | would return ‘1,210.73’ |
to_char(1210.73, ‘$9,999.00’) | would return ‘$1,210.73’ |
to_char(21, ‘000099’) | would return ‘000021’ |
to_char(sysdate, ‘yyyy/mm/dd’); | return ‘2003/07/09’ |
---|---|
to_char(sysdate, ‘Month DD, YYYY’); | return ‘July 09, 2003’ |
to_char(sysdate, ‘FMMonth DD, YYYY’); | return ‘July 9, 2003’ |
to_char(sysdate, ‘MON DDth, YYYY’); | return ‘JUL 09TH, 2003’ |
to_char(sysdate, ‘FMMON DDth, YYYY’); | return ‘JUL 9TH, 2003’ |
to_char(sysdate, ‘FMMon ddth, YYYY’); | return ‘Jul 9th, 2003’ |