日期函数

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. Median of Two Sorted Arrays-----LeetCode

    There are two sorted arrays A and B of size m and n respectively. Find the median of the two sorted ...

  2. C#下实现的半角转与全角的互转

    全角和半角的互转在C#下怎么实现呢? /// 转全角的函数(SBC case) /// ///任意字符串 ///全角字符串 /// ///全角空格为12288,半角空格为32 ///其他字符半角(33 ...

  3. [Mac]Mac OS 10.11虚拟机搭建ReactNative遇坑记录

    1.命令行安装nvm,一定要加入/.bash_profile,加入以后需要执行source /.bash_profile,使nvm命令行立即生效 2.node一定要安装最新版本,不然执行npm ins ...

  4. T4模板语法

    T4,即4个T开头的英文字母组合:Text Template Transformation Toolkit. T4文本模板,即一种自定义规则的代码生成器.根据业务模型可生成任何形式的文本文件或供程序调 ...

  5. JS瀑布流布局模式(2)

    这个例子与上一篇类似,唯一的区别是排序的方式有差别.上一篇是在高度最小的列里插入内容,这个案例是按顺序放置内容. 两种方法各有优缺点.第一种需要在图片内容加载完成的情况下有效,各个列的图高度差异不大. ...

  6. JDK - Tomcat - Eclipse - JSP - Servlet 配置运行全攻略

    花了将近两个月的时间,从 JDK 开始一步一步摸索,历经千辛万苦,终于让第一个 Servlet 运行起来了,创建第一个 Servlet  程序确实要比创建第一个 Asp.net 程序困难多了,但是不要 ...

  7. Java *字格

    class XingDemo { public static void main(String[] args) { int j = 0; int i = 0; int k = 0; for(i = 0 ...

  8. plupload上传控件错误exec(this.uid, component, action, args)

    plupload上传控件错误exec(this.uid, component, action, args) --undefined is not a function 原因:Flash元素隐藏后调用控 ...

  9. 【M25】将构造方法和非成员方法虚化

    1.所谓虚化,就是根据引用或者指针的真实类型,决定调用哪个方法. 2.构造方法虚化,就是根据引用(或者指针)的真实类型,构造出一个对象,如果指针的真实类型是Base,返回Base*:如果指针的真实类型 ...

  10. cdoj 1150 排名表 拓扑排序

    排名表 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1150 Descrip ...