首页 > 数据库技术 > 详细

Oracle关于日期函数使用的专题,小知识点

时间:2019-09-23 20:02:54      阅读:98      评论:0      收藏:0      [点我收藏+]

sysdate关键字
表示系统的当前时间
例如:
显示时间:当前时间
select sysdate from dual;

注意:sysdate进行加减操作的时候,单位是天
例如:
显示时间:明天的这个时候
select sysdate+1 from dual;

例如:
显示时间:昨天的这个时候
select sysdate-1 from dual;

例如:
显示时间:1小时之后的这个日期
select sysdate+1/24 from dual;


months_between 俩个日期之间相差多少个月(单位是月)
例如:
30天之后和现在相差多少个月
select months_between(sysdate+30,sysdate)
from dual;


add_months 返回一个日期数据:表示一个时间点,往后推x月的日期
例如:
‘01-2月-2016‘往后推2个月
select add_months(‘01-2月-2016‘,2)
from dual;

例如:
当前时间往后推4个月
select add_months(sysdate,4)
from dual;

注意:这个数字也可以是负数,表示往前推x月

next_day 返回一个日期数据:表示一个时间点后的下一个星期几在哪一天
例如:
离当前时间最近的下一个星期5是哪一个天
select next_day(sysdate,‘星期五‘)
from dual;
注意:
如果要使用‘FRIDAY‘,那么需要把当前会话的语言环境修改为英文


last_day 返回一个日期数据:表示一个日期所在月份的最后一天
例如:
当前日期所在月份的最后一天(月底)
select last_day(sysdate)
from dual;


round 对日期进四舍五入,返回操作后的日期数据
例如:
把当前日期四舍五入到月
select round(sysdate,‘MONTH‘)
from dual;
测试:15号16号分别是舍弃还是进位

把当前日期四舍五入到年
select round(sysdate,‘YEAR‘)
from dual;

//这个写法是错误的
//数字函数也有一个round
//俩个ronnd函数有冲突
//所以这里不能使用默认的日期格式
select round(‘01-2月-2016‘,‘MONTH‘)
from dual;

trunc 对日期进行截取 和round类似,但是只舍弃不进位

Oracle关于日期函数使用的专题,小知识点

原文:https://www.cnblogs.com/fyscn/p/11574055.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!