zoukankan      html  css  js  c++  java
  • oracle日期操作

    1.日期可以直接加减数字,还是日期

    例如:

    select ename,hiredate as zp_date ,
           hiredate - 5 as 减5天,                 --------date 类型对天数的加减可以直接运算
           hiredate -5/24   减5小时,                    -----加减小时,就除以24,类推
           add_months(hiredate, - 5) as 减5个月,--------加减月份需要用函数add_months()
           add_months(hiredate, -5*12) as 减5年   --------一年为12个月。
           from Scott.emp

    2.日期之间可以加减,也可乘除。以日为计算单元,小时要除以24,分钟要再除以60

    例如:

    select  间隔天数 ,    
            间隔天数*24  间隔小时,  ----天数变小时
            间隔天数 * 24 * 60 间隔分钟
    from (select MAX(hiredate) - MIN(hiredate) 间隔天数  FROM SCOTT.EMP where ename in ('SMITH','ALLEN','WARD') )x   ;
    -----找最大日期和最小日期算间隔天数;

    3.要算月份时,可以直接用months_between函数

    例如:

    select max_hire - min_hire 间隔天数,
           months_between( max_hire, min_hire ) 间隔月份,    
         -----此处要用 ','(逗号) 而不是用  '-'号
           months_between( max_hire, min_hire )/12 间隔年份
            from (select max(hiredate) max_hire, min(hiredate) min_hire from scott.emp where ename in ('SMITH','WARD'))p;

    4.比较上一个日期与下一个日期的天数只差

    例如:

    select deptno,
           ename,
           hiredate,
           next_hd - hiredate as diff
           from(
    select deptno,
           ename,
           hiredate,
           lead(hiredate) over(order by hiredate) next_hd,
           lag(hiredate) over (order by hiredate) next_hd2
      from emp
     WHERE deptno = 10)

    简单几个例子,实现日期的简单操作。

  • 相关阅读:
    string与bytes相互转化
    python3之requests
    BeyondCompare3提示许可密钥过期完美解决方法
    windows环境下 curl 安装和使用
    Linux:PS命令详解与使用
    wireshark怎么抓包、wireshark抓包详细图文教程
    七层协议和四层协议
    linux中快速清空文件内容的几种方法
    python_02列表,字典,IO处理
    python_01
  • 原文地址:https://www.cnblogs.com/yhoralce/p/6817601.html
Copyright © 2011-2022 走看看