日期和时间类型函数Oracle,PL/SQL 日期时间类型函数及运算

PL/SQL 日期时间类型函数及运算

更新时间:2007年03月21日 00:00:00   作者:

内部存储格式:

世纪、年、月、日、小时、分钟、秒

默认格式是:DD-MON-RR。

SYSDATE 返回当前的系统时间。

SELECT SYSDATE FROM DUAL;

对日期的数学运算

SELECT (SYSDATE-HIRE_DATE)/7 FROM TABLENAME WHERE ROWNUM;

数字列

ADD_MONTHS(date,x)函数,返回加上X月后的日期DATE的值。X可以是任意整数。如果结果的月份中所包含的   日分量少于DATE的月份的日分量,则返回结果月份的最后一天。如果不小于,则    结果与DATE的日分量相同。时间分量也相同。

CURRENT_DATE 以DATE类型返回会话时区当前的日期。这个函数同SYSDATE相似,除了SYSDATE不管当               会话时区。

CURRENT_TIMESTAMP[(precision)] 以TIMESTAMP WITH TIMEZONE 类型返回会话时区当前的日期。如果    指定precision,它指返回秒数的精度,缺省为6。

DBTIMEZONE 返回数据库的时区。

LAST_DAY(日期) 指定日期所在月份的最后一天的日期,这个函数可用来确定本月还有多少天。

LOCALTIMESTAMP[(precision)] 以TIMESTAMP类型返回会话时区的当前日期。如果指定precision,它指    返回秒数的精度,缺省为6 。

MONTHS_BETWEEN(离当前比较近的日期date1,以前的日期)  两个日期之间相差的月数(以日作为最小单位来计算的)。返回是相差的月数。如果date1和date2的日分量相同,或者这两个日期都分别是所在月的最后一天,那么返回结果是个整数。否则,返回结果包含一个分数,以一个月31天计算。

NEW_TIME(d,zone1,zone2)函数,当时区zone1中的日期和时间是D的时候,返回时区zone2中的日期和时间。

返回类型为DATE。zone1和zone2是字符字符串,另外的时区可在ORACLE9I中

通过查询V$TIMEZONE_NAMES得到。

NEXT_DAY (日期,星期几) 指定日期后将要遇到的后七天的某一天的日期。

ROUND(日期,‘MONTH/YEAR') 四舍五入得到新的日期。 保留位置是月和年

SESSIONTIMEZONE 返回当前会话的时区。返回类型是一个时区偏移或时区片名的字符字符串。如果指   定格式,则与 ALTER SESSION 语句中的格式相同。

SYS_EXTRACT_UTC(datetime) 从提供的DATETIME中以UTC(Coordinated Universal Time)返回时间。

DATETIME必须包含一个时区。

SYSTIMESTAMP 以TIMESTAMP WITH TIMEZONE 返回当前的日期和时间。当在分布式SQL语句中使用的时  候,返回本地数据库的日期和时间。

TRUNC(日期,‘MONTH/YEAR') 截取

TZ_OFFSET(timezone) 以字符字符串返回提供的timezone和UTC之间的偏移量。timezone可以被指定为时   区名或'+/-HH:HI'格式表示的偏移量。也可使用SESSIONTIMEZONE和   DBTIMEZONE函数,返回格式为'+/-HH:HI'。

字符字符串   时区

AST    大西洋标准时

ADT    大西洋夏令时

BST    白令标准时

BDT    白令夏令时

CST    中央标准时

CDT    中央夏令时

EST    东部标准时

EDT    东部夏令时

GMT    格林威治平均时

HST    阿拉斯加夏威夷标准时

HDT    阿拉斯加夏威夷夏令时

MST    Mountain标准时

MDT    Mountain夏令时

NST    纽芬兰标准时

PST    太平洋标准时

PDT    太平洋夏令时

YST    YuKon标准时

YDT    YuKon夏令时

日期和日期时间算术

运算  返回类型

结果

d1-d2  NUMBER

返回D1和D2之间相差的天数。该值是一个数值,其小数部分代表一天的几分之几。

dt1-dt2  INTERVAL

返回DT1和DT2之间的时间间隔。

i1-i2  INTERVAL

返回i1和i2之间的差距。

d1+d2  N/A

非法——仅能进行两个日期之间的相减。

dt1+dt2  N/A

非法——仅能进行两个日期之间的相减。

i1+i2  INTERVAL

返回i1和i2的和。

d1+n  DATE

在D1上加上N天作为DATE类型返回。N可以是实数,它包含一天的几分之几。

d1-n  DATE

从D1上减去N天作为DATE类型返回。N可以是实数,它包含一天的几分之几。

dt1+i1  DATETIME

返回DT1和I1的和。

dt1-i1  DATETIME

返回DT1和I1之间的差距。

i1*n  INTERVAL

返回I1的N次方。

i1/n  INTERVAL

返回I1除以N的值。

表中注:

D1和D2指日期值;

DT1和DT2指日期时间值;

I1和I2指时间间隔值;

N指数字值。

相关文章

1a1b05c64693fbf380aa1344a7812747.png

这篇文章主要给大家介绍了关于Oracle如何获取系统当前时间等操作的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Oracle具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧2019-09-09

4f55910a645b073bc4fc65dc10dc14bd.png

横表转纵表亦可用与decode意义相似的case语句实现,原理同该语句,这里不再过多描述。2009-07-07

0ea3c7666119d5615e582f823fb3fad6.png

这篇文章主要为大家详细介绍了PL/SQL远程备份和恢复Oracle数据库的具体方法,感兴趣的小伙伴们可以参考一下2016-09-09

4f96a78db829b1556ff16de21e013c7a.png

这篇文章主要介绍了Oracle 配置连接远程数据库的教程,即oracle配置tnsnames.ora文件实例,感兴趣的朋友一起看看吧2018-03-03

8cc1031babc6aff2319f1c6af8544aa0.png

Oracle实现全文检索,其机制其实很简单。即通过Oracle专利的词法分析器(lexer),将文章中所有的表意单元(Oracle 称为 term)找出来,记录在一组 以dr$开头的表中,同时记下该term出现的位置、次数、hash 值等信息。2016-05-05

0c932a99bb7b6f23c937db507070cc7b.png

oracle数据库脱机备份的实现方法与在使用oracle数据库脱机备份时的一些注意事项2013-11-11

cca732bf65a93ed2ec0ac80c638460fe.png

今天小编就为大家分享一篇关于Oracle中sql语句(+)符号代表连接的使用讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧2019-02-02

2d9f31f2af7b675a3d153d2b7f1035a7.png

本文列举了3种删除重复记录的方法,分别是rowid、group by和distinct,小伙伴们可以参考一下。2016-05-05

b452cee8ec5cd9e58ab98eba17281e59.png

这篇文章主要介绍了Oracle中手动删除数据库教程,本文给出了详细步骤以及清除ASM数据库的步骤,需要的朋友可以参考下2014-10-10

f4838ec7e2d4da28e0b57d4e852dadd4.png

一个简单的oracle分页存储过程的实现和调用。在看了众多的分页存储过程以后发现都是针对sqlserver的,而没有oracle的,因此想写一个关于oracle的存储过程,因为我用到的数据库是oracle。2009-10-10

最新评论

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值