Oracle時間戳 與時間之間的相互轉換


 Unix時間戳記是從'1970-01-01 00:00:00'GMT開始的秒數,表現為整數型。

  Oracle中的時間是Date型,以下函數提供了兩種時間轉換的Oracle函數

 (1)從Unix時間戳記轉換為Oracle時間

  create or replace function unix_to_oracle(in_number NUMBER) return date is

  begin

   return(TO_DATE('19700101','yyyymmdd') + in_number/86400 +TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))/24);

  end unix_to_oracle;

 (2)由Oracle時間Date型轉換為Unix時間戳記

  create or replace function oracle_to_unix(in_date IN DATE) return number is

  begin

   return( (in_date -TO_DATE('19700101','yyyymmdd'))*86400 - TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))*3600);

  end oracle_to_unix;


免責聲明!

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



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