网站大量收购独家精品文档,联系QQ:2885784924

oracle日期时间类型.docVIP

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
oracle日期时间类型.doc

Oracle 数据类型及存储方式(三)日期时间类型——袁光东[转] 2009年10月18日 星期日 16:57 第三部分 日期时间类型 §3.1 DATE Date类型Oralce用于表示日期和时间的数据类型。固定占用7个字节。 包括七个属性: 世纪 世纪中的年份 月份 月份中的哪一天 小时 分 秒 SQL create table test_date(col_date date); Table created SQL insert into test_date values(to_date(2008-06-27 10:35:00,yyyy-mm-dd hh24:mi:ss)); 1 row inserted SQL select to_char(col_date,yyyy-mm-dd hh24:mi:ss),dump(col_date) from test_date; TO_CHAR(COL_DATE,YYYY-MM-DDHH DUMP(COL_DATE) ------------------------------ -------------------------------------------------------------------------------- 2008-06-27 10:35:00??????????? Typ=12 Len=7: 120,108,6,27,11,36,1 Date类型的内部编码为12 长度:占用7个字节 数据存储的每一位到第七位分别为:世纪,年,月,日,时,分,秒。 世纪:采用”加100”表示法来存储。即世纪+100来存储。120 – 100 = 20 年:跟世纪一样采用”加100”表示法来存储。108 – 100 = 08(采用两位表示) 月:自然存储.6 日:自然存储,不做修改,27 时:(时,分,秒都采用“加1”法存储)11 -1= 10 分:36 -1 = 35 秒:1 -1 = 0 为什么世纪和年份要用加100法存储呢?是为了支持BC和AD日期。 BC即为公元前。 AD即为公元。 如果世纪 – 100为一个负数,那么就是一个BC日期。 插入一个公元前日期 SQL insert into test_date values(to_date(-4712-01-01,syyyy-mm-dd hh24:mi:ss)); 1 row inserted SQL select to_char(col_date,bc yyyy-mm-dd hh24:mi:ss),dump(col_date) from test_date; TO_CHAR(COL_DATE,BCYYYY-MM-DD DUMP(COL_DATE) ------------------------------ -------------------------------------------------------------------------------- 公元 2008-06-27 10:35:00?????? Typ=12 Len=7: 120,108,6,27,11,36,1 公元前 4712-01-01 00:00:00???? Typ=12 Len=7: 53,88,1,1,1,1,1 我们已经了解了日期的存储结构。当要对日期进行截取时,比如去掉时,分,秒。只需要把最后的三个字节设为:12 12 1就可以了。 SQL create table test_date1 (col_char varchar2(12), col_date date); Table created SQL insert into test_date1 values(full,to_date(2008-06-27 12:01:00,yyyy-mm-dd hh24:mi:ss)); 1 row inserted SQL insert into test_date1(col_char,col_date) select minute, trunc(col_date,mi) from test_date1 2???? union all 3????? select day, trunc(col_date,dd) from test_date1 4???? union all 5????? select month,trunc(col_date,mm) from test_date1 6????? union all 7?????? select year,trunc(col_date,y) from test

文档评论(0)

000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档