Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Różnica między znacznikami czasu w milisekundach w Oracle

Rozszerzając nieco odpowiedź René, jeśli chcesz uzyskać całkowitą liczbę milisekund, musisz wyodrębnić i połączyć wszystkie elementy z przedziału, który jest wytwarzany przez odjęcie jednego znacznika czasu od drugiego:

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, w tym datę epoki Uniksa dla porównania, ale musisz dostosować ją do strefy czasowej swojego serwera.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle — dzielony ciąg znaków rozdzielany przecinkami (ciąg zawiera spacje i kolejne przecinki)

  2. Czy Oracle używa oceny zwarciowej?

  3. Jak odzyskać bazę danych za pomocą RMAN

  4. InMemory DUPLIKAT Zamieszanie w Oracle RAC

  5. Jak utworzyć tabelę Oracle z zagnieżdżonymi tabelami typów obiektów?