oracle的to_date()函数
在oracle数据库中,oracle to_date()函数是我们经常使用的函数,下面就为您详细介绍oracle to_date()函数的用法
to_date()与24小时制表示法及mm分钟的显示:
一.在使用oracle的to_date函数来做日期转换
很多java程序员也许会直接的采用“yyyy-mm-dd hh:mm:ss”的格式作为格式进行转换,
但是在oracle中会引起错误:“ora 01810 格式代码出现两次”。
to_date('2005-01-01 13:14:20','yyyy-mm-dd hh24:mm:ss') //错误写法
原因是oracle的sql中不区分大小写,mm和mm被认为是相同的格式代码,所以oracle的sql采用了mi代替分钟。
to_date('2005-01-01 13:14:20','yyyy-mm-dd hh24:mi:ss')//正确写法 //因为oracle的sql中不区分大小写,所以下面的写法和上面的效果是一样的,也是正确的. to_date('2005-01-01 13:14:20','yyyy-mm-dd hh24:mi:ss')//正确写法 to_date('2005-01-01 13:14:20','yyyy-mm-dd hh24:mi:ss')//正确写法
二.日期格式参数 含义说明
d 一周中的星期几 day 天的名字,使用空格填充到9个字符 dd 月中的第几天 ddd 年中的第几天 dy 天的简写名 iw iso标准的年中的第几周 iyyy iso标准的四位年份 yyyy 四位年份 yyy,yy,y 年份的最后三位,两位,一位 hh 小时,按12小时计 hh24 小时,按24小时计 mi 分 ss 秒 mm 月 mon 月份的简写 month 月份的全名 w 该月的第几个星期 ww 年中的第几个星期 1.日期时间间隔操作 //当前时间减去7分钟的时间 select sysdate,sysdate - interval '7' minute from dual //当前时间减去7小时的时间 select sysdate - interval '7' hour from dual //当前时间减去7天的时间 select sysdate - interval '7' day from dual //当前时间减去7月的时间 select sysdate,sysdate - interval '7' month from dual //当前时间减去7年的时间 select sysdate,sysdate - interval '7' year from dual //时间间隔乘以一个数字 select sysdate,sysdate - 8 *interval '2' hour from dual
日期到字符操作
select sysdate,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual select sysdate,to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dual select sysdate,to_char(sysdate,'yyyy-ddd hh:mi:ss') from dual select sysdate,to_char(sysdate,'yyyy-mm iw-d hh:mi:ss') from dual
字符到日期操作
select to_date('2003-10-17 21:15:37','yyyy-mm-dd hh24:mi:ss') from dual
oracle有毫秒级的数据类型
- –返回当前时间 年月日小时分秒毫秒
select to_char(current_timestamp(5),'dd-mon-yyyy hh24:mi:ssxff') from dual;
- –返回当前 时间的秒毫秒,可以指定秒后面的精度(最大=9)
select to_char(current_timestamp(9),'mi:ssxff') from dual;
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论