Oracle extract函數截取年月日時分秒


oracle中extract()函數從oracle 9i中引入,用於從一個date或者interval類型中截取到特定的部分

語法如下:

extract (    

        { year | month | day | hour | minute | second }    

        | { timezone_hour | timezone_minute }    

        | { timezone_region | timezone_abbr }    

from { date_value | interval_value } )

1. 獲取年月日

--獲取年月日寫法一
select sysdate, 
       extract(year from sysdate) year,
       extract(month from sysdate) month, 
       extract(day from sysdate) day
  from dual;

--獲取年月日寫法二, 日期之間只能用"-"
select date'2020-05-07' dateCode, 
       extract(year from date'2020-05-07') year,
       extract(month from date'2020-05-07') month, 
       extract(day from date'2020-05-07') day
  from dual;

 

--獲取年月日寫法三
select sysdate,
       extract(year from systimestamp) year,
       extract(month from systimestamp) month,
       extract(day from systimestamp) day
from dual;

--獲取年月日寫法四,日期之間只能用"-"
select timestamp'2020-05-07 12:12:12',
       extract(year from timestamp'2020-05-07 18:19:12') year,
       extract(month from timestamp'2020-05-07 18:19:12') month,
       extract(day from timestamp'2020-05-07 18:19:12') day
from dual;

 2. 獲取時分秒

--獲取時分秒寫法一
select extract(hour from cast(systimestamp as timestamp)) hour,
       extract(minute from systimestamp) minute,
       extract(second from systimestamp) second
  from dual;

--獲取時分秒寫法二
select extract(hour from timestamp'2020-05-07 18:19:12') hour,
       extract(minute from timestamp'2020-05-07 18:19:12') minute,
       extract(second from timestamp'2020-05-07 18:19:12') second
 from dual;

3. 獲取兩個日期之間的具體時間間隔,extract函數是最好的選擇

select
      extract (day from dt2 - dt1) day,
      extract (hour from dt2 - dt1) hour,
      extract (minute from dt2 - dt1) minute,
      extract (second from dt2 - dt1) second
from(select to_timestamp ('2011-02-04 15:07:00','yyyy-mm-dd hh24:mi:ss') dt1,
            to_timestamp ('2011-05-17 19:08:46','yyyy-mm-dd hh24:mi:ss') dt2
     from dual);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM