您现在的位置是:群英 > 数据库 > 关系型数据库
常用的Oracle日期函数有哪些,基础用法是什么
Admin发表于 2022-05-10 11:21:24864 次浏览
这篇文章给大家介绍了“常用的Oracle日期函数有哪些,基础用法是什么”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“常用的Oracle日期函数有哪些,基础用法是什么”有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。

本篇文章给大家带来了关于Oracle的相关知识,其中主要介绍了一些常用的日期函数相关问题,包括了SYSDATE、ADD_MONTHS、LAST_DAY、TRUNC、ROUND等等,希望对大家有帮助。

系统日期、时间函数

SYSDATE函数

该函数没有参数,可以得到系统的当前时间。

案例代码:

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;

结果:

SYSTIMESTAMP函数

该函数没有参数,可以得到系统的当前时间,该时间包含时区信息,精确到微秒。

案例代码

select systimestamp from dual;

结果:

数据库时区函数

DBTIMEZONE函数

该函数没有输入参数,返回数据库时区。

案例代码:

select dbtimezone from dual;

结果:

给日期加上指定的月份函数:

ADD_MONTHS(r,n)函数

该函数返回在指定日期r上加上一个月份数n后的日期。其中

r:指定的日期。

n:要增加的月份数,如果N为负数,则表示减去的月份数。

案例代码:

select to_char(add_months(to_date('2018-11-12', 'yyyy-mm-dd'), 1),
               'yyyy-mm-dd'),
       to_char(add_months(to_date('2018-10-31', 'yyyy-mm-dd'), 1),
               'yyyy-mm-dd'),
       to_char(add_months(to_date('2018-09-30', 'yyyy-mm-dd'), 1),
               'yyyy-mm-dd')
  from dual;

结果:(如果指定的日期是月份的最后一天,返回的也是新的月份的最后一天,如果新的月份比指定的月份日期少,将会自动调回有效日期)

月份最后一天函数

LAST_DAY(r)函数

返回指定r日期的当前月份的最后一天日期。

案例代码:

select last_day(sysdate) from dual;

结果:

指定日期后一周的日期函数:

NEXT_DAY(r,c)函数

返回指定R日期的后一周的与r日期字符(c:表示星期几)对应的日期。

案例代码:

 select next_day(to_date('2018-11-12','yyyy-mm-dd'),'星期四') from dual;

结果:

返回指定日期中特定部分的函数

EXTRACT(time)函数

返回指定time时间当中的年、月、日、分等日期部分。

案例代码:

select extract(year from timestamp '2018-11-12 15:36:01') as year,
       extract(month from timestamp '2018-11-12 15:36:01') as month,
       extract(day from timestamp '2018-11-12 15:36:01') as day,
       extract(minute from timestamp '2018-11-12 15:36:01') as minute,
       extract(second from timestamp '2018-11-12 15:36:01') as second
  from dual;

结果:

返回两个日期间的月份数:

MONTHS_BETWEEN(r1,r2)函数

该函数返回r1日期和r2日期直接的月份。当r1>r2时,返回的是正数,假如r1和r2是不同月的同一天,则返回的是整数,否则返回的小数。当r1<r2时,返回的是负数。

案例代码:

select months_between(to_date('2018-11-12', 'yyyy-mm-dd'),
                      to_date('2017-11-12', 'yyyy-mm-dd')) as zs, --整数
       months_between(to_date('2018-11-12', 'yyyy-mm-dd'),
                      to_date('2017-10-11', 'yyyy-mm-dd')) as xs, --小数
       months_between(to_date('2017-11-12', 'yyyy-mm-dd'),
                      to_date('2018-10-12', 'yyyy-mm-dd')) as fs --负数
  from dual;

结果:

日期截取函数

ROUND(r[,f])函数

将日期r按f的格式进行四舍五入。如果f不填,则四舍五入到最近的一天。

案例代码:

select sysdate, --当前时间
       round(sysdate, 'yyyy') as year, --按年
       round(sysdate, 'mm') as month, --按月
       round(sysdate, 'dd') as day, --按天
       round(sysdate) as mr_day, --默认不填按天
       round(sysdate, 'hh24') as hour --按小时
  from dual;

结果:

TRUNC(r[,f])函数

将日期r按f的格式进行截取。如果f不填,则截取到当前的日期。

案例代码:

select sysdate, --当前时间
       trunc(sysdate, 'yyyy') as year, --按年
       trunc(sysdate, 'mm') as month, --按月
       trunc(sysdate, 'dd') as day, --按天
       trunc(sysdate) as mr_day, --默认不填按天
       trunc(sysdate, 'hh24') as hour --按小时
  from dual;

结果:


到此这篇关于“常用的Oracle日期函数有哪些,基础用法是什么”的文章就介绍到这了,感谢各位的阅读,更多相关常用的Oracle日期函数有哪些,基础用法是什么内容,欢迎关注群英网络资讯频道,小编将为大家输出更多高质量的实用文章!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: Oracle日期函数
相关信息推荐
2021-12-24 18:02:59 
摘要:这篇文章我们主要来了解InnoDB的逻辑存储结构的相关内容,对大家学习和理解InnoDB的逻辑存储结构有一定的帮助,下文有很详细的介绍,有需要的朋友可以参考,接下来就跟随小编来一起学习一下吧!
2022-06-29 17:15:35 
摘要:本文详细讲解了group by的用法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2022-06-13 17:06:25 
摘要:关系数据库的数据操作分为查询和更新两类。查询语句用于各种检索操作,更新操作用于插入、删除和修改等操作。
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部