Oracle学习笔记(十七)

本文介绍了Oracle数据库中处理时间的三种类型:Date、Timestamp 和 Interval,并详细解释了它们的功能和使用方法。此外,还讨论了LOB类型的使用,包括CLOB、NCLOB、BLOB 和 BFILE 的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

103). Date,TimeStamp,Interval

这三个是Oracle处理时间方面的类型。从字面上面,就可以很清楚的明白这其中的区别。Date是正常的时间。Timestamp是时间戳。而Interval则是表示一段时间。觉得分割的好细致

还有一点需要明白的是,在数据库中,存储的时间无论你用哪一种格式进入,其底层的保存方式都会基本相同。在书中的P525左右,会有一些如何存放的介绍。我觉得很有意思。

 

104Date类型。主要是函数

     toDate(strDate,Dateformate)  eg, toDate(’22-jun-2005’,’dd-mon-yyyy’)

     toChar(Date,flang)  eg, toChar(’22-jun-2005’,’yyyy’)。这里会是2005。取年份。

     Trunc(Dateflag)   eg Trunc(’22-jun-2005’,’y’)。这里会是2005。取年份。

     这里要说明一下,在日期比较,特别是拿日期的一部分进行比较时,trunc要比tochar效率高。EgTrunc(’22-jun-2005’,’y’) = to_date(’01-jan-2005’,’dd-mon-yyyy’)

 

105Date日期的加减

      书中提供了这样的建议

      1.NUMTODSINTERVAL内置函数来增加小时,分钟和秒

      2.加一个简单的书来表示天

      3.Add_Month内置函数来增加月和年

时间差

   Months_between(date1,date2)   月份之差

   Numtodsinterval(date1-date2,’day’) days  天数差

   Numtoyminterval(Months_between(date1,date2),’month’) days

   这里不是很明白,具体可以看书P532

 

106TIMESTAMP

      声明时 TIMESTAMP(n) n表示精度,越高,精度越高如果为0,基本和上算个Date

      不过Timestamp有两个子类型。分别为with time zonewith local time zone。这两个子类,我看的不是很清楚。

 

107Interval类型。

      Interval year(n) to month n表示年份的长度

      Interval day(n) to second(m)

这是其两种定义的方式。

Numtodsinterval(date1-date2,’day’) 字符串转换到其的函数

 

108 LOB类型

          放入大对象的类型。支持4中。

          CLOB,字符LOB

          NCLOB,类似于varcharnvarchar的关系

          BLOB ,二进制LOB

          BFLIE 二进制文件LOB

    其实现起来还是相当的复杂。但是应用还是相对简单的。不过具体实现看的不是很懂。感觉有点偏向于DBA的工作

不过有一点,就是enable storage in rowdisable storage in row的区别要注意。前者效率高。

P553开始,讲述了各个子句的用法。

 

109ROWID/UROWID

      ROWID,简单的说就行在数据库中的唯一标识和物理相关数据有关。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值