精华内容
下载资源
问答
  • Oracle日期函数

    2019-04-17 01:41:40
    NULL 博文链接:https://xiongxu.iteye.com/blog/1832330
  • Oracle日期函数简介

    2020-12-16 07:22:09
    Oracle日期函数用于对Oracle数据库中的日期及时间进行处理,下面就为您详细介绍Oracle日期函数的用法,希望对您能有所启迪。 (1)SYSDATE和TRUNC 两个Oracle日期函数取Oracle服务器系统的日期和截掉小数部分的功能...
  • oracle日期函数

    2010-04-09 09:25:51
    oracle经常用到的日期函数,很有用的
  • Oracle日期函数和转换函数

    万次阅读 多人点赞 2019-04-25 20:54:03
    一、日期函数 日期函数用于处理date类型的数据,两个日期相减返回日期之间相差的天数。日期不允许做加法运算,无意义。 常见代表符号:yyyy 年,mm 月,dd 日,hh 小时,mi 分钟,ss 秒,day 星期 默认情况下日期...

    一、日期函数
    日期函数用于处理date类型的数据,两个日期相减返回日期之间相差的天数。日期不允许做加法运算,无意义。
    常见代表符号:yyyy 年,mm 月,dd 日,hh 小时,mi 分钟,ss 秒,day 星期
    默认情况下日期格式是dd-mon-yy即12-3月-19
    (1)sysdate: 该函数返回系统时间
    (2)months_between(m,n)日期m和日期n相差多少月数
    (3)add_months(d,n)在日期d上增加n个月数
    (4)next_day(d, ‘星期*’) 指定日期d下一个星期*对应的日期
    (5)last_day(d):返回指定日期d所在月份的最后一天
    (6)extract(month from d)从日期d上提取月份数
    (7)round(d,time)日期的四舍五入
    (8)trunc(d,time)日期的截断
    以下是日期函数的一些例子及效果图:

    各种情况例子结果
    months_betweenselect months_between(‘01-9月-95’,‘11-1月-94’) from dual;19.6774193548387
    add_monthsselect add_months(‘11-2月-18’,6) from dual;2018/8/11
    next_dayselect next_day(‘11-2月-18’,‘星期六’) from dual;2018/2/17
    last_dayselect last_day(‘11-2月-18’) from dual;2018/2/28
    round 四舍五入月份 25-7月-18select round(to_date(‘25-7月-2018’),‘month’) from dual;2018/8/1
    round 四舍五入年份 25-7月-18select round(to_date(‘25-7月-2018’),‘year’) from dual;2019/1/1
    trunc 截断月份 25-7月-18select trunc(to_date(‘25-7月-2018’),‘month’) from dual;2018/7/1
    trunc 截断年份 25-7月-18select trunc(to_date(‘25-7月-2018’),‘year’) from dual;2018/1/1

    eg:查找已经入职8个月多的员工
    SQL>

    select * from emp
    where sysdate>=add_months(hiredate,8);
    

    在这里插入图片描述
    eg:显示满10年服务年限的员工的姓名和受雇日期。
    SQL>

    select ename, hiredate from emp
    where sysdate>=add_months(hiredate,12*10);
    

    在这里插入图片描述
    eg:对于每个员工,显示其加入公司的天数。
    SQL> select floor(sysdate-hiredate),ename from emp;
    在这里插入图片描述
    或者
    SQL> select trunc(sysdate-hiredate),ename from emp; 在这里插入图片描述
    eg:找出各月倒数第3天受雇的所有员工。
    SQL>

     select hiredate,ename from emp
    where last_day(hiredate)-2=hiredate;
    

    在这里插入图片描述

    二、转换函数
    转换函数用于将数据类型从一种转为另外一种。在某些情况下,oracle server允许值的数据类型和实际的不一样,这时oracle server会隐含的转化数据类型
    我们要说的是尽管oracle可以进行隐含的数据类型的转换,但是它并不适应所有的情况,为了提高程序的可靠性,我们应该使用转换函数进行转换。
    (1)to_char函数
    格式: to_char(date,‘format’)
    1、必须包含在单引号中而且大小写敏感。
    2、可以包含任意的有效的日期格式。
    3、日期之间用逗号隔开。
    eg:日期是否可以显示 时/分/秒
    SQL> select ename, to_char(hiredate,'yyyy-mm-dd hh24:mi:ss') from emp; 在这里插入图片描述
    eg:薪水是否可以显示指定的货币符号
    SQL> select sal,to_char(sal,'$999,999.99') from emp; 在这里插入图片描述
    yy:两位数字的年份2004–>04
    yyyy:四位数字的年份 2004年
    mm:两位数字的月份 8月–>08
    dd:两位数字的天 30号–>30
    hh24: 8点–>20
    hh12:8点–>08
    mi、ss–>显示分钟/秒
    9:显示数字,并忽略前面0
    0:显示数字,如位数不足,则用0补齐
    .:(小数点)在指定位置显示小数点
    ,:(千位符)在指定位置显示逗号
    $:(美元符)在数字前加美元
    L:(本地货币符)在数字前面加本地货币符号
    C:(国际货币符)在数字前面加国际货币符号
    eg:显示薪水的时候,把本地货币单位加在前面
    SQL> select ename, to_char(sal,'L99999.99')from emp; 在这里插入图片描述
    eg:显示1980年入职的所有员工
    SQL> select * from emp where to_char(hiredate, 'yyyy')=1980;
    在这里插入图片描述
    eg:显示所有12月份入职的员工
    SQL> select * from emp where to_char(hiredate, 'mm')=12; 在这里插入图片描述
    这里的12和1980是数字,可以加 ’ ’ 也可以不加,因为Oracle会自动转换,但是最好加。
    eg:显示姓名、hiredate和雇员开始工作日是星期几
    SQL> select ename,hiredate,to_char(hiredate,'day') from emp; 在这里插入图片描述
    (2)to_date函数
    格式:to_date(string,‘format’)
    函数to_date用于将字符串转换成date类型的数据。
    eg:把字符串2015-03-18 13:13:13转换成日期格式,
    SQL> select to_date('2015-03-18 13:13:13','yyyy-mm-dd hh24:mi:ss') from dual;
    在这里插入图片描述
    (3)to_number函数
    格式:to_number(char,‘format’)
    使用to_number函数将字符转换成日期。
    SQL> select to_number('¥1,234,567,890.00','L999,999,999,999.99') from dual;
    在这里插入图片描述

    展开全文
  • Oracle日期函数大全

    2008-12-09 13:25:49
    Oracle日期函数大全 常用日期数据格式
  • Oracle日期函数总结

    千次阅读 2019-04-05 19:14:51
    1.日期和字符转换函数用法:(to_char,to_date,to_namber) 使用to_date函数将字符转换成数字。 使用to_char函数日期的转换,并也可以对数字转换。 使用to_namber函数将字符转换成日期 格式:必须包含在单...

    1.日期和字符转换函数用法:(to_char,to_date,to_namber)

    使用to_date函数将字符转换成数字。

    使用to_char函数对日期的转换,并也可以对数字转换。

    使用to_namber函数将字符转换成日期

    格式:必须包含在单引号中且大小写敏感;可以包含任意的有效的日期格式;日期之间用逗号隔开。

    注意:(1)Dual 是一个‘伪表’作用于用来测试函数和表达式;(2)sysdate 格式化当前系统日期和时间

     

    2.日期函数调试:

    Months_between //两个日期相差的月数

    代码:Select months_between(’01-9月-95’,’11-1月-94’) from  employees

    显示:19.67741…

    Add_months //向指定日期中加上若干个月数

    代码:Select months_between(’11-1月-94’,6) from  employees

    显示:11-07-94

    Next_day //指定日期的下一个星期 对应的日期

    代码:Select next_day(‘01-9月-95’,‘星期五’) from employees

    显示:08-09-95

    Last_day //本月的最后一天

    代码:select last_day(‘01-2月-95’)from employees

    显示:28-02-95

    Rround //日期四舍五入

    Select round(sysdate,‘year’)from employees

    显示:01-10-19

    Select round(sysdate,‘month)from employees

    显示:01-04-9

    Trunc //日期截断

    Select trunc(sysdate,‘year’)from employees

    显示:01-10-19

    Select round(sysdate,‘month’)from employees

    显示:01-04-9

     

    3.系统的日期和时间格式

    是指格式当前系统的日期和时间,并使用to_char数字转换函数。

    代码:Select to_char(sysdate,yyyy-mm-dd hh24:mi:ss) from dual;

    注意:使用双引号向日期添加字符。

     

    4.数字符号转换格式

    To_char格式:9数字、0零、$美元符、L本地货币符号、.小数点、,千位符

     

    5.字符隐式格式

    若字符串中有特殊字符,例如 ’123456789’,则无法进行隐式转换,需要使用to_numbar()来完成

    6.查询相关的日期

    对于把日期作为查询条件的查询,一般都使用to_date() 把一个字符串转为日期,这样可以不必关注日期格式

    展开全文
  • oracle 日期函数网上已经有了不少,特我们跟集中一下,免得大家麻烦。
  • Oracle管理oracle日期函数 1转换函数 与date操作关系最大的就是两个转换函数to_date,to_char) to_date)作用将字符类型按一定格式转化为日期类型 具体用法:to_date'2004-11-27'yyyy-mm-dd,前者为字符串后者为转换日期...
  • 2021-2022收藏的精品资料
  • oracle日期函数大全

    千次阅读 2017-12-14 10:05:24
    1.Sysdate 获得当前日期和时间 select sysdate from dual 2.Last_day 本月最后一天  select last_day(sysdate) from dual 3.Add_months(d,n) 当前日期d后推n个月 ,用于从一个日期值增加或减少一些月份...
    1.Sysdate 获得当前日期和时间
    
    select sysdate from dual


    2.Last_day 本月最后一天 
    select last_day(sysdate) from dual


    3.Add_months(d,n) 当前日期d后推n个月 ,用于从一个日期值增加或减少一些月份 
    select add_months(sysdate,-2) from dual


    4.Months_between(f,s) 日期f和s间相差月数 
    select months_between(sysdate,to_date('2010-10-03','yyyy-mm-dd')) from dual;


    5.NEXT_DAY(d, day_of_week),返回由"day_of_week"命名的,在变量"d"指定的日期之后的第一个工作日的日期。参数"day_of_week"必须为该星期中的某一天。
    SELECT next_day(sysdate,1) FROM dual;


    6.current_date()返回当前会话时区中的当前日期 
    select sessiontimezone,current_date from dual; 


    7.current_timestamp()以timestamp with time zone数据类型返回当前会话时区中的当前日期
    select sessiontimezone,current_timestamp from dual; 


    8.dbtimezone()返回时区
    select dbtimezone from dual;


    9.extract()找出日期或间隔值的字段值 
    select extract(month from sysdate) "This Month" from dual;


    10.localtimestamp()返回会话中的日期和时间
    select localtimestamp from dual;


    11.Y或YY或YYY 年的最后一位,两位或三位
    select to_char(sysdate,'YYYY') from dual


    12.SYEAR使公元前的年份前加一负号
    select to_char(sysdate,'SYEAR') from dual


    13.Q 季度,1~3月为第一季度
    select to_char(sysdate,'Q') from dual;


    14.MM 月份数
    select to_char(sysdate,'MM') from dual  


    15.RM 月份的罗马表示
    select to_char(sysdate,'RM') from dual


    16.Month 用9个字符长度表示的月份名
    select to_char(sysdate,'Month') from dual


    17.WW 当年第几周
    select to_char(sysdate,'WW') from dual


    18.W 本月第几周
    select to_char(sysdate,'W') from dual


    19。DDD 当年第几
    select to_char(sysdate,'DDD') from dual


    20.DD 当月第几天
    select to_char(sysdate,'DD') from dual


    21.D 周内第几天
    select to_char(sysdate,'D') from dual


    22.DY 周内第几天缩写
    select to_char(sysdate,'D') from dual


    23.HH或HH12 12进制小时数
    select to_char(sysdate,'HH') from dual


    24.HH24 24小时制
    select to_char(sysdate,'HH24') from dual


    25.MI 分钟数(0~59)
    select to_char(sysdate,'MI') from dual


    26.SS 秒数(0~59) 
    select to_char(sysdate,'SS') from dual


    注意:不要将MM格式用于分钟(分钟应该使用MI)。MM是用于月份的格式,将它用于分钟也能工作,但结果是错误的。 


    27.上月末天
    select to_char(add_months(last_day(sysdate),-1),'yyyy-MM-dd') LastDay from dual;


    28.上月首天
    select to_char(add_months(last_day(sysdate)+1,-2),'yyyy-MM-dd') firstDay from dual;


    29.按照每周进行统计
    select to_char(sysdate,'ww') from dual group by to_char(sysdate,'ww');


    30.按照每月进行统计
    select to_char(sysdate,'mm') from dual group by to_char(sysdate,'mm');


    31.按照每季度进行统计
    select to_char(sysdate,'q') from dual group by to_char(sysdate,'q');


    32.按照每年进行统计
    select to_char(sysdate,'yyyy') from dual group by to_char(sysdate,'yyyy');
    展开全文
  • ORACLE日期函数01课程.pdf
  • Oracle 日期函数

    2018-12-18 13:24:38
    表示日期有三种模式: H 日期 + 数字 = H 日期 (若干天后的日期日期 - 数字 = 日期 (若干天之前的日期日期日期 = 两日期之前相隔的天数 计算当前系统时间十天前的日期 日期 - 日期 ...

    表示日期有三种模式:

    H 日期  + 数字 =  H 日期  (若干天后的日期)

    日期 - 数字 = 日期 (若干天之前的日期)

    日期 -  日期  =   两日期之前相隔的天数

    计算当前系统时间十天前的日期

    日期  -  日期

    计算两个日期间经历的月数

    语法:MONTH_BETWEEN(日期1,日期2)

    转换为年限 MONTH_BETWEEN(日期1,日期2)/12即可

    2、增加若干月后的日期

    语法:日期 ADD-MONTHS(日期,月数)

    例:

     ADD_MONTHS(SYSDATE,4)            ADD_MONTHS(SYSDATE,24)                      ADD_MONTHS(SYSDATE,300)等等

    可以避免闰年,闰月问题

    计算还差一年润35年雇员日期的雇员信息

     SELECT * FROM emp WHERE TRUNC(MONTHS_BETWEEN(SYSDATE,hiredate)/12)=34;

    3、计算指定月的最后一天

    语法 : LAST_DAY(日期)

    利用日期  -  数字  =  日期   计算出倒数第二天

    4、计算下一个指定的星期

    语法:日期  NEXT_DAY(日期,一周的时间数)

    查询雇员的姓名,工作,雇员日期,雇员年数

    转换为整数

    在计算年数时会出现余数,余数实际上就是除12的结果,利用MOD( ) 求月数的结果

    计算天数,计算天数只有一个公示:日期1 - 日期2 = 数字(天数)

    日期1:一定是当前日期

    日期2:实际上可以利用MONTHS_BETWEEN( )函数求出两个日期之间的月数

     

     

    展开全文
  • 学习ORACLE日期函数一分析.pdf
  • oracle 日期函数

    2012-11-06 17:48:11
    自己收藏的和大家分享一下顺便做个持久性保存!
  • Oracle日期函数大全[文].pdf
  • ORACLE日期函数01(1)[参考].pdf
  • Oracle日期函数集锦

    2015-09-08 16:41:42
    Oracle日期函数集锦,常见日期函数的使用,及具体的使用实例
  • Oracle日期函数练习

    2014-08-06 14:06:30
    关于Oracle日期函数的练习,代码清晰简洁,适于初学者参考!
  • NULL 博文链接:https://best-sheng.iteye.com/blog/1002955
  • 返回指定日期date加上n月后的日期 select add_months(to_date('20190321','yyyyMMdd'),22) from dual;--返回2021/1/21 last_day(date,n) 返回指定日期date减去n个月后的日期 select last_day(to_date('20190321...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 70,071
精华内容 28,028
关键字:

oracle日期函数