oracle日期轉化毫秒及毫秒轉為日期

zhanglincon發表於2010-04-16

在Oracle中,預設沒有直接提供獲取當前時間的毫秒數的相關function,所以要想在SQL裡面獲得毫秒數,只好手動計算

  1. SQL> select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss’) current_date, (sysdate- to_date(‘1970-01-01′,‘yyyy-mm-dd’)) * 86400000 current_milli from dual;
  2. CURRENT_DATE        CURRENT_MILLI
  3. ——————-               ————-
  4. 2009-01-06 14:00:09      1231250409000

--1000*60*60*24一天毫秒數 = 86400000

方法:
  日期a- 日期b=相差天數.
一天毫秒數 = 1000*60*60*24(86400000)

 

select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss') current_date,
       (sysdate - to_date('1970-01-01','yyyy-MM-dd')) * 86400000 current_milli
  from dual;
 
  select to_date('1970-01-01','yyyy-MM-dd')+1261674301000/86400000 from dual;

  select to_date('1970-01-01','yyyy-MM-dd')+當前日期的毫秒數/86400000 from dual;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8554499/viewspace-659931/,如需轉載,請註明出處,否則將追究法律責任。

相關文章