1            ADD_MONTHS

格式:ADD_MONTHS(D,N)

说明:返回日期时间D加N月后相应的日期时间。N为正时则表示D之后;N为负时则表示为D之前。N为小数则会自己主动先删除小数部分,而用整数部分

举例:

SQL>SELECT ADD_MONTHS(SYSDATE,7) A,ADD_MONTHS(SYSDATE,-7) B,ADD_MONTHS(SYSDATE,7.9)C FROM DUAL;

A                           
B                             C

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

2015/1/2016:07:02 2013/11/20 16:07:02 2015/1/20 16:07:02

2            CURRENT_DATE

格式:CURRENT_DATE

说明:返回当前会话时区所相应的日期

举例:SQL> SELECTCURRENT_DATE A FROM DUAL;

A

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

2014/6/2016:09:04

3            CURRENT_TIMESTAMP

格式:CURRENT_TIMESTAMP([P])

说明:返回当前会话时区所相应的日期时间时间戳。P为精度,能够是O—9之间的一个整数,默觉得6

举例:

SQL>SELECT CURRENT_TIMESTAMP A,CURRENT_TIMESTAMP(9) B FROM DUAL;

A                                      B

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

20-6月-14 04.12.33.402000下午
+08:00  20-6月 -1404.12.33.402000000下午 +08:00

4            DBTIMEZONE

格式:DBTIMEZONE

说明:返回数据库时区

举例:

SQL>SELECT DBTIMEZONE A FROM DUAL;

A

------

+00:00

5            EXTRACT

格式:EXTRACT(C,FROM D)

说明:返回日期时间D中指定的部分C。C的取值为YEAR,MONTH。DAY,HOUR,MINUTE,SECOND,TIMEZONE_HOUR,TIMEZONE_MINUTE,
TIMEZONE_REGION, TIMEZONE_ABBR。指定的C必须在D中存在

举例:

抽取年月日

SQL>SELECT EXTRACT(YEAR FROM SYSDATE) A,EXTRACT(MONTH FROM SYSDATE) B,EXTRACT(DAYFROM SYSDATE) C FROM DUAL;

A         
B          C

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

2014         
6         20

抽取时分秒不能从SYSDATE中抽取。SYSTIMESTAMP返回的UTC标准时间

SQL>SELECT EXTRACT(HOUR FROM SYSTIMESTAMP) A,EXTRACT(MINUTE FROM SYSTIMESTAMP)B,EXTRACT(SECOND FROM SYSTIMESTAMP) C FROM DUAL;

A         
B          C

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

8        
26    50.052

6            LAST_DAY

格式:LAST_DAY(D)

说明:返回日期D所在月份的最后一天

举例:

SQL>SELECT LAST_DAY(SYSDATE) A FROM DUAL;

A

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

2014/6/3016:40:08

7            LOCALTIMESTAMP

格式:LOCALTIMESTAMP([p])

说明:返回当前会话时区的日期时间。P为精度。能够是0-9之间的一个整数,默觉得6。与CURRENT_TIMESTAMP在返回值的数据类型上有差别

举例:

SQL>SELECT LOCALTIMESTAMP(4) A FROM DUAL;

A

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

20-6月-14 04.42.09.2800下午

8            MONTHS_BETWEEN

格式:MONTHS_BETWEEN(D1,D2)

说明:返回日期D1和D2之间相差的月数。假设D1小于D2,则返回负数:假设D1和D2的天数同样或都是月底,则返回整数;或者Oracle以每月31天为准计算结果的小数部分

举例:

SQL>SELECT MONTHS_BETWEEN(SYSDATE,TO_DATE('2013-12-31','YYYY-MM-dd'))A,MONTHS_BETWEEN(SYSDATE,TO_DATE('2015-12-1','YYYY-MM-dd')) A FROM DUAL;

A         
A

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

5.66771318-17.364544

9            NEXT_DAY

格式:NEXT_DAY(D,C)

说明:返回日期D后的下一个C。

C是一个字符串。表示用当前会话语言表示的一周中某一天的全称(如星期一、星期二等),也能够是数值。

举例:SQL> SELECTNEXT_DAY(SYSDATE,3) A, NEXT_DAY(SYSDATE,'星期一')
B FROM DUAL;

A                        B

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

2014/6/2416:48:562014/6/23 16:48:56

10       ROUND

格式:ROUND(date,fmt)

说明:日期的四舍五入。

fmt为year或者YY,按**1-6月和7-12月**四舍五入到近期的几几年1月1日

fmt为month或者MM。按**1-15日和16-30日**四舍五入到近期的几月1日

fmt为day,按**周一到周三和周四到周日**四舍五入到近期的周日

fmt为DD,假设小时超过12,向前进1

fmt为HH,假设分超过30,向前进1

fmt为分MI,到分,秒数30是分界线。相当于四舍五入的5。假设秒超过30。向前进1

fmt为秒SS,精确到秒

举例:

SQL>SELECT ROUND(TO_DATE('2013-11-24 10:31:11','YYYY-MM-DD HH24:MI:SS'),'YY') AFROM DUAL;

A

-----------

2014/1/1

SQL>SELECT ROUND(TO_DATE('2013-11-24 10:31:11','YYYY-MM-DD HH24:MI:SS'),'MM') AFROM DUAL;

A

-----------

2013/12/1

SQL>SELECT ROUND(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS'),'Day')A,ROUND(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS'),'DD') B FROMDUAL;

A          B

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

2013/11/24 2013/11/25

SQL>SELECT ROUND(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS'),'HH') A,ROUND(TO_DATE('2013-11-2510:31:11','YYYY-MM-DD HH24:MI:SS'),'MI') B FROM
DUAL;

A                           
  B

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

2013/11/2511:00:00 2013/11/25 10:31:00

11       SESSIONTIMEZONE

格式:SESSIONTIMEZONE

说明:返回当前会话的时区

举例:

SQL>SELECT SESSIONTIMEZONE A FROM DUAL;

A

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

+08:00

12       SYS_EXTRACT_UTC

格式:SYS_EXTRACT_UTC(datetime_wuth_timezone)

说明:返回UTC时间

举例:

SQL>SELECT SYS_EXTRACT_UTC(SYSTIMESTAMP) A FROM DUAL;

A

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

24-6月-14 03.05.09.136892上午

13       SYSDATE

格式:SYSDATE

说明:返回当前时间,数据库驻留的操作系统时间

举例:

SQL>SELECT SYSDATE A 
FROM DUAL;

A

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

2014/6/2411:06:24

14       SYSTIMESTAMP

格式:SYSTIMESTAMP

说明:返回系统时间,包括时区信息,带微秒

举例:

SQL>SELECT SYSTIMESTAMP A FROM DUAL;

A

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

24-6月-14 11.09.50.997760上午
+08:00

15       TRUNC

格式:TRUNC(d[,fmt])

说明:截断日期。仅仅有d一个參数时。返回日期时间。

fmt为yyyy或者yy时,返回当年第一天

fmt为mm时,返回当月第一天

fmt为dd时,返回当前年月日

fmt为d时。返回当前星期的第一天

fmt为hh时,截取到当前的小时

fmt为mi时,截取到当前的分钟

举例:

SQL>SELECT TRUNC(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS')) A FROM DUAL;

A

-----------

2013/11/25

SQL>SELECT TRUNC(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS'),'YYYY')A,TRUNC(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS'),'YY') B 
FROM DUAL;

A          B

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

2013/1/1   2013/1/1

SQL>SELECT TRUNC(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS'),'MM')A,TRUNC(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS'),'DD') B 
FROM DUAL;

A          B

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

2013/11/1  2013/11/25

SQL>SELECT TRUNC(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS'),'D') A FROMDUAL;

A

-----------

2013/11/24

SQL>SELECT TRUNC(TO_DATE('2013-11-25 10:31:11','YYYY-MM-DD HH24:MI:SS'),'HH') A,TRUNC(TO_DATE('2013-11-2510:31:11','YYYY-MM-DD HH24:MI:SS'),'MI') B FROM
DUAL;

A                  B

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

2013/11/2510:00:00 2013/11/25 10:31:00



ORACLE函数之日期时间运算函数的更多相关文章

  1. mysql 日期时间运算函数(转)

      DAYOFWEEK(date) 返回日期date是星期几(1=星期天,2=星期一,……7=星期六,ODBC标准)mysql> select DAYOFWEEK('1998-02-03'); ...

  2. mysql 日期时间运算函数

    时期时间函数 DAYOFWEEK(date) 返回日期date是星期几(1=星期天,2=星期一,……7=星期六,ODBC标准)mysql> select DAYOFWEEK('1998-02-0 ...

  3. ORACLE函数之日期时间转换函数

     1.          TO_CHAR 语法:TO_CHAR(X [,format]) 说明:将X按format格式转换成字符串.X是一个日期或者数字.format是一个规定了X採用何种格式转换 ...

  4. ORACLE——EXTRACT() 截取日期时间的函数使用

    1.截取日期的 年: --使用方法 EXTRACT(YEAR FROM DATE) SQL> SELECT EXTRACT( YEAR FROM SYSDATE ) FROM DUAL; --结 ...

  5. MySQL日期时间处理函数

    -- MySQL日期时间处理函数SELECT NOW() FROM DUAL;-- 当前日期时间:2017-05-12 11:41:47-- 在MySQL里也存在和Oracle里类似的dual虚拟表: ...

  6. SAP 使用较频繁的日期时间处理函数总结

    在ABAP实际开发中,经常需要用到一些日期时间处理函数,个人感觉经常使用到的函数进行一下汇总 1.  根据工厂日历 计划交货日期 和 收货处理时间 来计算 销售计划中计划完工日期,其他类似日期计算等 ...

  7. MySQL字符串函数、日期时间函数

    MySQL字符串函数.日期时间函数 一.常见字符串函数: 1.CHAR_LENGTH  获取长度(字符为单位) 2.FORMAT  格式化 3.INSERT  替换的方式插入 4.INSTR  获取位 ...

  8. Mysql日期时间Extract函数介绍

    MySQL日期时间Extract函数的优点在于可以选取日期时间的各个部分,从年一直到微秒,让我们对MySQL日期时间的处理更为轻松. MySQL 日期时间 Extract(选取)函数.1. 选取日期时 ...

  9. SQL Server(第二章) 字符串函数、日期时间函数、转换函数

    --1.CONCAT 函数:字符串连接(支持sql server2012 SQL规则 如果与NULL连接返回NILL) SELECT empid,CONCAT(firstname,lastname) ...

随机推荐

  1. 【c语言】统计一个数二进制中的1的个数

    // 统计一个数二进制中的1的个数 #include <stdio.h> int count(int a) { int count = 0; while (a) { count++; a ...

  2. Qt制作应用插件

    在Qt下,插件有两种形式,一种是用于QtCreator下,扩展IDE功能.另一种是用于扩展开发者的应用.本文要讲的是后者. 定义一个纯虚类作为插件接口 #include <QtPlugin> ...

  3. WKE——Webkit精简的纯C接口的浏览器

    以前不知道有这个东西 https://github.com/cexer/wke http://blog.csdn.net/weolar/article/details/50383491 http:// ...

  4. sqlplus连接登录数据库时,出现 ORA-28009错误(转)

    安装了oracle10g,打算用SQLPLUS 登录数据库进行操作.打开sqlplus后,可以看到要求输入用户名,口令和主机字符串.前面两个都知道,但是后一个却不明白,查了资料才知道是安装时的全局数据 ...

  5. C# Http以文件的形式上传文件

    以下的是上传的方法: // <summary> /// 将本地文件上传到指定的服务器(HttpWebRequest方法) /// </summary> /// <para ...

  6. ASI简单实现网络编程

    使用iOS SDK中的HTTP网络请求API,相当的复杂,调用比較麻烦.ASIHTTPRequest 对CFNetwork API进行了封装.而且使用起来非常easy的一套API,在非常多比較老旧的项 ...

  7. 小议common lisp程序开发流程 - Ever 17 - 博客频道 - CSDN.NET

    小议common lisp程序开发流程 - Ever 17 - 博客频道 - CSDN.NET 小议common lisp程序开发流程 分类: lisp 2011-04-17 20:59 1316人阅 ...

  8. linux使用进阶(一)

    本文依据<应该知道的Linux技巧>coolshell上的一篇文章提到的Linux技巧,结合自己掌握的情况进行扩展和总结得来.主要包含下面内容:     一.日常操作     二.数据处理 ...

  9. 方案猿身高project联赛,艺术家,相反,养殖场!-------三笔

    已经看到了程序猿在电影中都是非常厉害的人物,硬道理键盘噼里啪啦后,奇妙的事情会发生. 当我报了这个专业,開始认真的写程序,在这个领域学习的时候,却发现非常多干这一行 的都自称"码农" ...

  10. VSTO之旅系列(二):创建Excel解决方案

    原文:VSTO之旅系列(二):创建Excel解决方案 本专题概要 引言 创建VSTO项目 Excel对象模型 创建Excel外接程序 创建Excel文档级自定义项 小结 一.引言 也许很多朋友都没有听 ...