Oracle
 sql >> база данни >  >> RDS >> Oracle

Разлика между времеви печати в милисекунди в Oracle

Разширявайки малко отговора на Рене, ако искате общите милисекунди, тогава трябва да извлечете и комбинирате всички елементи от интервала, който се получава чрез изваждане на едно времеви печат от друго:

select doj, systimestamp - doj,
  trunc(1000 * (extract(second from systimestamp - doj)
    + 60 * (extract(minute from systimestamp - doj)
      + 60 * (extract(hour from systimestamp - doj)
        + 24 * (extract(day from systimestamp - doj) ))))) as milliseconds
from test1;

DOJ                          SYSTIMESTAMP-DOJ     MILLISECONDS
---------------------------- ---------------- ----------------
21-MAR-14 09.25.34.514526000 3 2:9:8.785713          266948785 
21-MAR-14 09.25.34.520345000 3 2:9:8.779894          266948779 
22-MAR-14 09.25.34.523144000 2 2:9:8.777095          180548777 
22-MAR-14 09.25.34.527770000 2 2:9:8.772469          180548772 
23-MAR-14 09.25.34.532482000 1 2:9:8.767757           94148767 
23-MAR-14 09.25.34.535603000 1 2:9:8.764636           94148764 
24-MAR-14 09.25.34.538556000 0 2:9:8.761683            7748761 
24-MAR-14 09.25.34.541729000 0 2:9:8.75851             7748758 

SQL Fiddle, включително датата на Unix епохата за сравнение, въпреки че ще трябва да я коригирате за часовата зона на вашия сървър.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Поправете „Не може да се инсталира в Homebrew на ARM процесор в префикс по подразбиране на Intel (/usr/local)!“

  2. Как да форматирате дати в Oracle

  3. Как да получите достъп до базата данни на Oracle през мрежа?

  4. Как да добавя водеща нула в число в Oracle SQL заявка?

  5. Обработка на грешки в Oracle