日期函数

SYSDATE

--当前系统时间
select sysdate from dual;

EXTRACT

--获取当前年份
select extract(year from sysdate) from dual; --年
select extract(month from sysdate) from dual; --月
select extract(day from sysdate) from dual; --日

TO_DATE

--将字符串转换为日期
SELECT TO_DATE('2014-12-31', 'yyyy-mm-dd') FROM DUAL;
SELECT TO_DATE('2014-12-31 15:20:45', 'yyyy-mm-dd hh24:mi:ss') FROM DUAL;
SELECT TO_DATE('2014年12月31日', 'yyyy"年"mm"月"dd"日') AS T FROM DUAL;
--两个日期间的天数
SELECT FLOOR(SYSDATE - TO_DATE('', 'yyyymmdd')) FROM DUAL;

TO_DATE格式(以时间:2007-11-02 13:45:25为例)

类别

格式

说明

Year

yy

two digits 两位年

07

yyy

three digits 三位年

007

yyyy

four digits 四位年

2007

Month

mm

number 两位月

11

mon

abbreviated 字符集表示

11月,若是英文版,显示nov

month

spelled out 字符集表示

若是英文版,显示november

Day:

dd

number当月第几天

02

ddd

number当年第几天

02

dy

abbreviated 当周第几天简写

星期五,若是英文版,显示fri

day  

spelled out 当周第几天全写

星期五,若是英文版,显示friday

Hour:

hh

two digits 12小时进制

01

hh24

two digits 24小时进制

13

Minute

mi

two digits 60进制

45

Second

ss

two digits 60进制

25

其他:

Q

digit季度

4

WW digit 当年第几周 44
W digit 当月第几周 1

TO_CHAR

SELECT TO_CHAR(SYSDATE, 'yyyy-mm-dd hh24:mi:ss') AS NOWTIME FROM DUAL; --日期转化为字符串
SELECT TO_CHAR(SYSDATE, 'yyyy') AS NOWYEAR FROM DUAL; --获取时间的年
SELECT TO_CHAR(SYSDATE, 'mm') AS NOWMONTH FROM DUAL; --获取时间的月
SELECT TO_CHAR(SYSDATE, 'dd') AS NOWDAY FROM DUAL; --获取时间的日
SELECT TO_CHAR(SYSDATE, 'hh24') AS NOWHOUR FROM DUAL; --获取时间的时
SELECT TO_CHAR(SYSDATE, 'mi') AS NOWMINUTE FROM DUAL; --获取时间的分
SELECT TO_CHAR(SYSDATE, 'ss') AS NOWSECOND FROM DUAL; --获取时间的秒
SELECT TO_CHAR(SYSDATE, 'yyyy"年"mm"月"dd"日') AS T FROM DUAL; --带中文的时间格式

MONTHS_BETWEEN(date1,date2)

--计算两个日期之间的月份差
select months_between('1-1月-2014', '31-12月-2014') from dual;
结果:-11.9677419354839

ADD_MONTHS(date,month)

--月份的添加,2014-5-20后的3个月
select add_months('20-5月-2014', 3) from dual;
结果:2014/8/20 --月份的添加,2014-5-20前的3个月
select add_months('20-5月-2014', -3) from dual;
结果:2014/2/20

NEXT_DAY(date,week)

--返回指定日期后的星期,返回今天后的下一个星期六是多少号
select next_day(sysdate, '星期六') from dual;

LAST_DAY

--返回指定日期所在月的最后一天
select last_day(sysdate) from dual;

ROUND

--按照指定格式对日期进行四舍五入
select round(sysdate, 'year') from dual; --按照年
select round(sysdate, 'month') from dual; --按照月
select round(to_date('2014-11-16', 'yyyy-mm-dd'), 'day') from dual; --按照星期
select round(to_date('2014-11-16', 'yyyy-mm-dd'), 'dd') from dual; --按照日期

Oracle基础 (十三)日期函数的更多相关文章

  1. [php基础]Mysql日期函数:日期时间格式转换函数详解

    在PHP网站开发中,Mysql数据库设计中日期时间字段必不可少,由于Mysql日期函数输出的日期格式与PHP日期函数之间的日期格式兼容性不够,这就需要根据网站实际情况使用Mysql或PHP日期转换函数 ...

  2. Oracle数据库之日期函数

    今天给大家介绍一下oracle数据中的日期函数的用法.废话不多说,我们看一下oracle给我们提供了那些函数? 1.sysdate 用途:获取当前系统时间. 2.to_date('字符类型','日期类 ...

  3. oracle中的日期函数的使用

    TO_DATE格式(以时间:2007-11-02   13:45:25为例) Year:               yy two digits 两位年                显示值:07   ...

  4. MYSQL基础03(日期函数)

    工作中对日期的处理是经常遇到的,需求可能多种多样,因此重点介绍. 1.获取当前日期 select NOW() -- 结果:2015-10-28 22:41:11 ),NOW() -- 结果 2015- ...

  5. Oracle中的日期函数

    (一)查询系统的当前日期用sysdate,用法如下: select sysdate from dual 日期操作的三个格式: 日期-数字=日期 日期+=日期 日期-日期=数字(天数) (二)常用的日期 ...

  6. [转] SQL日期函数dayadd/datediff/datepart

    函数一: CREATE OR REPLACE FUNCTION dayadd(p_Component varchar2, p_Number number, p_Date date) RETURN DA ...

  7. oracle逐步学习总结之oracle数字函数和日期函数(基础四)

    原创作品,转自请注明出处:https://www.cnblogs.com/sunshine5683/p/10140716.html 继上篇总结,继续进行总结: 以下下数字函数: 1.abs(n):返回 ...

  8. Oracle的学习三:java连接Oracle、事务、内置函数、日期函数、转换函数、系统函数

    1.java程序操作Oracle java连接Oracle JDBC_ODBC桥连接 1.加载驱动: Class.forName("sun.jdbc.odbc.JdbcodbcDriver& ...

  9. 【函数】Oracle函数系列(2)--数学函数及日期函数

    [函数]Oracle函数系列(2)--数学函数及日期函数 1  BLOG文档结构图 2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不 ...

随机推荐

  1. Dell商用台式机、笔记本、服务器800电话

    戴尔Optiplex商用台式机 售后服务电话 800-858-0950 选1选2选2 戴尔Latitude商用笔记本 售后服务电话 800-858-0950 选1选3选2 戴尔服务器PowerEdge ...

  2. [Mac]Mac Xcode 删除已经下载好的模拟器版本

    Delete simulator refences for xCode: Delete the particular simulator runtime references (*.simruntim ...

  3. 待整理 - BAT文件编写

    BAT文件语法和技巧(bat文件的编写及使用)  http://www.jb51.net/article/5828.htm

  4. C#使用SMTP发送邮件

    需要用到的命名空间: using System.Net.Mail; using System.IO; using System.Text.RegularExpressions; using Syste ...

  5. 关于heritrix安装配置时出现”必须限制口令文件读取访问权限”的解决方法

    转载:http://www.floatinglife.cn/关于heritrix安装配置时出现必须限制口令文件读取访问 最近开始写一个RSS聚合程序,需要爬虫支持,于是就整来heritrix,没想到, ...

  6. android开发中提示:requires permission android.permission write_settings解决方法

    一.在Manifest.xml 中添加: <uses-permission android:name="android.permission.WRITE_CONTACTS" ...

  7. sqlserver锁表、解锁、查看锁表

    sqlserver锁表.解锁.查看锁表 http://www.cnblogs.com/zfanlong1314/p/3698566.html http://www.cnblogs.com/chjf20 ...

  8. tomcat如何简单调优

    我们在javaEE开发的过程中,经常会进行tomcat调优操作,下面我们来简单讲解一下tomcat调优. 1) 去掉web.xml的监视,提前将jsp编译成servlet. 2)在物理内存允许的范围内 ...

  9. arp:地址解析协议(Address Resolution Protocol)(来自维基百科)

    地址解析协议(Address Resolution Protocol),其基本功能为通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。它是IPv4中网络层必不可少的协议,不过在I ...

  10. [程序猿入行必备]CSS样式之优先级

    专业玩家请移步:http://www.w3.org/TR/CSS2/cascade.html 使用CSS控制页面样式时,常常出现设定的样式被"覆盖",不能生效的情况. 浏览器是根据 ...