程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> ORACLEEXTRACT函數

ORACLEEXTRACT函數

編輯:Oracle教程

ORACLE范例:
SELECT EXTRACT(YEAR FROM SYSDATE) FROM DUAL;// return Current Year
SELECT EXTRACT(MONTH FROM SYSDATE) FROM DUAL; //return Current Month
SELECT EXTRACT(DAY FROM SYSDATE) FROM DUAL; //return Current Day
SELECT EXTRACT(HOUR FROM SYSDATE) FROM DUAL;//Error
SELECT EXTRACT(HOUR FROM TIMESTAMP '2005-10-10 10:10:10') FROM DUAL;// Correct

SELECT EXTRACT(MINUTE FROM SYSDATE) FROM DUAL;//Error
SELECT EXTRACT(MINUTE FROM TIMESTAMP '2005-10-10 10:10:10') FROM DUAL;// Correct

以上是EXTRACT()函數的使用說明,有個很重要的部分.就是extract 抽取年月日部分和時分部分的使用方法是不同的.
EXTRACT(YEAR FROM SYSDATE)中FROM 的下一個參數是日期類型的時候可以抽取年月日.就是說這個參數是日期類型的時候就可以抽取年\月\日,而抽取不了時\分部分.抽取時分部分得在FROM 後面加帶TIMESTAMP 且後面加時間字符.
這裡要注意,在(MINUTE FROM TIMESTAMP '2005-10-10 10:10:10')中,如果把'2005-10-10 10:10:10'用日期類型的字段來代替並轉換成字符類型後,也是錯誤的,估計是這方法的問題.
比如(MINUTE FROM TIMESTAMP to_date(to_char(日期類型,'YYYY-MM-DD hh24:mi:ss'),'YYYY-MM-DD hh24:mi:ss')),這樣執行不了的.

如果真要從日期類型的字段中抽取時\分部分用to_char() 函數就可以了.比如to_char(日期類型,'hh24:mi')

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved