42.Oracle数据库SQL开发之 日期和时间的存储与处理——Oracle对2位年份处理

150 阅读1分钟

42.Oracle数据库SQL开发之 日期和时间的存储与处理——Oracle对2位年份处理

欢迎转载,转载请标明出处:   http://blog.csdn.net/notbaron/article/details/49723421      

虽然ORACLE数据库存储了4位的年份,如果只提供2位数字,ORACLE就会根据所使用的格式是YY还是RR来解释世纪。

1.  使用YY格式

如果日期中的年份采用的格式为YY,并且只提供了2位的年份,那么就认为这一年的世纪与数据库服务器上当前设置的世纪相同。

执行如下:

store@PDB1> select to_char(to_date('04-jul-15','dd-mon-yy'),'dd-mon-yyyy'),to_char(to_date('04-jul-75','dd-mon-yy'),'dd-mon-yyyy')from dual;

 

TO_CHAR(TO_ TO_CHAR(TO_

----------- -----------

04-jul-2015 04-jul-2075

2.  使用RR格式

如果日期中的年份采用的格式为RR,并且只提供各类最后2位年份,那么年份中的前两位数字由两部分共同确定。

如下图1所示:

 

如果日期中的年份使用RRRR格式,但是只提供了2位年份,那么使用RR格式来解释年份。

执行如下:

store@PDB1> selectto_char(to_date('04-jul-15','dd-mon-rr'),'DD-MON-YYYY'),

   to_char(to_date('04-jul-55','DD-MON-RR'),'dd-mon-yyyy') from dual;

 

TO_CHAR(TO_ TO_CHAR(TO_

----------- -----------

04-JUL-2015 04-jul-1955