zoukankan      html  css  js  c++  java
  • ORACLE——EXTRACT() 截取日期时间的函数使用

    1.截取日期的 年:

    --使用方法
    EXTRACT(YEAR FROM DATE)
    SQL> SELECT EXTRACT( YEAR FROM SYSDATE ) FROM DUAL;
    --结果:2019
    SQL> SELECT EXTRACT(YEAR FROM TO_DATE( '2018-02-02 12:00:00','YYYY-MM-DD HH24:MI:SS')) FROM DUAL;
    --结果:2018

     2.截取日期的 月份:

    --使用方法:
    EXTRACT(MONTH FROM DATE)
    SQL>  SELECT EXTRACT(MONTH FROM TO_DATE( '2018-02-02 12:00:00','YYYY-MM-DD HH24:MI:SS')) FROM DUAL;
    --结果:2
    SQL>  SELECT EXTRACT(MONTH FROM SYSDATE) FROM DUAL;
    --结果:3

    3.截取日期的 哪一天:

    --使用方法
    EXTRACT(DAY FROM DATE)
    SELECT EXTRACT(DAY FROM SYSDATE) FROM DUAL;
    --结果:4                      
    SQL> SELECT EXTRACT(DAY FROM TO_DATE('2018-12-12','YYYY-MM-DD')) FROM DUAL;
    --结果:12

     4.截取时间的 小时:

    --使用方法
    EXTRACT(HOUR FROM TIME)--当前时间是2019-03-04 10:23:35
    SQL> SELECT EXTRACT(TIMEZONE_HOUR FROM SYSTIMESTAMP) TIMEZONE_HOUR FROM DUAL;
    TIMEZONE_HOUR
    -------------
    8
    SQL> SELECT EXTRACT(HOUR FROM SYSTIMESTAMP) HOUR FROM DUAL;
    HOUR
    ----------
    2
    --上面两种方式不知道为什么截取的时间不正确,知道的大神请赐教
    
    
    --下面的两种方法可以截取到当前时间的小时     
    SQL> SELECT TO_CHAR(SYSDATE,'HH') HOUR FROM DUAL;
    HOUR
    ----
    10
    
    --下面的方法截取的是精确到小时
    SQL> SELECT TRUNC(SYSDATE,'HH')  FROM DUAL;
    TRUNC(SYSDATE,'HH')
    -------------------
    2019/3/4 10:00:00
    
    
    SQL> SELECT TRUNC(SYSDATE,'HH') HOUR FROM DUAL;--此方法虽然显示的是到小时,到结果实际上和上面的一样,如下图:
    HOUR
    -----------
    2019/3/4 10

     5.截取时间的分钟:

    --使用方法
    EXTRACT(MINUTE FROM DATE) 
    SQL> SELECT EXTRACT(MINUTE FROM SYSTIMESTAMP) MINUTE FROM DUAL;
    MINUTE
    ------
        26

    6.截取时间的 秒:

    --使用方法:
    EXTRACT(SECOND FROM DATE)
    SQL> SELECT EXTRACT(SECOND FROM SYSTIMESTAMP) SECOND FROM DUAL;
        SECOND
    ----------
      22.24036

    SQL> SELECT EXTRACT(SECOND FROM SYSTIMESTAMP) SECOND1 , TRUNC(EXTRACT(SECOND FROM SYSTIMESTAMP)) SECOND2 FROM DUAL; SECOND1 SECOND2 ---------- ---------- 36.062783 36
  • 相关阅读:
    C语言初学者代码中的常见错误与瑕疵(22)
    ANSI C (83)和87 ANSI C 这两个标准存在么?
    常见的认证
    python入门(一)
    Altium Designer重装后图标都变白板或都变一样的解决方法
    转:关于S参数的一些理解
    射频与微波测量之S参数
    驻波比
    PCB特征阻抗计算
    函数的形参(非引用形参、指针形参、引用形参)
  • 原文地址:https://www.cnblogs.com/whx20100101/p/10469640.html
Copyright © 2011-2022 走看看