Oracle 日期函数常用方法记录


本文参考:
时间加减
拼接字符串
日期函数

前言

工作中使用到了 Oracle 的一些日期函数,记录一下以防忘记,如有错误,还请指正。


一、select 查询 if 判断条件

语法

 SELECT CASE 1
          WHEN 1 THEN
           'a'
          WHEN 2 THEN
           'b'
          ELSE
           'c'
        END AS WE
   FROM DUAL

执行结果

执行结果

二、拼接日期

语法

select v01301,
        stt_Date,
        CASE
          WHEN to_char(stt_Date, 'mm') > 1 THEN
           to_date(CONCAT(to_char(add_months(stt_Date, 12), 'yyyy'),'/01/01'), 'yyyy/mm/dd')
          ELSE
           stt_Date
        END AS WE
   from xxx;

结果

在这里插入图片描述

解释

  • CONCAT():拼接俩个字符串,也可以使用“||”代替
  • to_char() :格式化日期,返回字符串类型
  • to_date():格式化日期,返回 date 类型

三、时间的加减语法

select sysdate, add_months(sysdate, 12) from dual; --加1年

select sysdate, add_months(sysdate, 1) from dual; --加1月

select sysdate, to_char(sysdate + 7, 'yyyy-mm-dd HH24:MI:SS') from dual; --加1星期

select sysdate, to_char(sysdate + 1, 'yyyy-mm-dd HH24:MI:SS') from dual; --加1天

select sysdate, to_char(sysdate + 1 / 24, 'yyyy-mm-dd HH24:MI:SS') from dual; --加1小时

select sysdate, to_char(sysdate + 1 / 24 / 60, 'yyyy-mm-dd HH24:MI:SS') from dual; --加1分钟

select sysdate, to_char(sysdate + 1 / 24 / 60 / 60,'yyyy-mm-dd HH24:MI:SS') from dual; --加1秒

-- ====================================================================== --

select sysdate,add_months(sysdate,-12) from dual; --减1年

select sysdate,add_months(sysdate,-1) from dual; --减1月

select sysdate,to_char(sysdate-7,'yyyy-mm-dd HH24:MI:SS') from dual;   --减1星期

select sysdate,to_char(sysdate-1,'yyyy-mm-dd HH24:MI:SS') from dual;   --减1天

select sysdate,to_char(sysdate-1/24,'yyyy-mm-dd HH24:MI:SS') from dual;  --减1小时

select sysdate,to_char(sysdate-1/24/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --减1分钟

select sysdate,to_char(sysdate-1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --减1秒

四、时间间隔操作

-- 当前时间减去7分钟的时间
select sysdate,sysdate - interval '7' MINUTE from dual

-- 当前时间减去7小时的时间
select sysdate - interval '7' hour from dual

-- 当前时间减去7天的时间
select sysdate - interval '7' day from dual

-- 当前时间减去7月的时间
select sysdate,sysdate - interval '7' month from dual

-- 当前时间减去7年的时间
select sysdate,sysdate - interval '7' year from dual

-- 时间间隔乘以一个数字
select sysdate,sysdate - 8 *interval '2' hour from dual

总结

Oracle 数据库的相关日期函数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值