oracle日期类型数据带问号,oracle 数据类型详解---日期型

1、常用日期型数据类型 1.1、DATE 这是ORACLE最常用的日期类型,它可以保存日期和时间,常用日期处理都可以采用这种类型。DATE表示的日期范围可以是公元前4712年1月1日至公元9999年12月31日 date类型在数据库中的存储固定为7个字节,格式为:  第1字节:世纪+100  第2字节:年  第3字节:月  第4字节:天  第5字节:小时+1  第6字节:分+1  第7字节:秒+1

1.2、TIMESTAMP(p) 这也是ORACLE常用的日期类型,它与date的区别是不仅可以保存日期和时间,还能保存小数秒,小数位数可以指定为0-9,默认为6位,所以最高精度可以到ns(纳秒),数据库内部用7或者11个字节存储,如果精度为0,则用7字节存储,与date类型功能相同,如果精度大于0则用11字节存储。 格式为:  第1字节:世纪+100  第2字节:年  第3字节:月  第4字节:天  第5字节:小时+1  第6字节:分+1  第7字节:秒+1  第8-11字节:纳秒,采用4个字节存储,内部运算类型为整形

注:TIMESTAMP日期类型如果与数值进行加减运算会自动转换为DATE型,也就是说小数秒会自动去除。

create table T

(

C1 DATE,

C2 TIMESTAMP(9)

);

insert into t(c1,c2) values(

to_date('2010-2-12 10:20:30','YYYY-MM-DD HH24:MI:SS'),

to_timestamp('2010-2-12 13:24:52.123456','YYYY-MM-DD HH24:MI:SS.FF6')

2、常见问题2.1、如何取当前时间sysdate--返回当前系统日期和时间,精确到秒systimestamp--返回当前系统日期和时间,精确到毫秒2.2、如何进行日期运算日期型数据可以与数值加减得到新的日期,加减数值单位为天sysdate+1--取明天的当前时间sysdate-1/24--取当前时间的前一个小时

SQL> select sysdate d1,sysdate+1 d2,sysdate-1/24 d3 from dual;

你可能感兴趣的:(oracle日期类型数据带问号)