Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Sự khác biệt giữa các dấu thời gian tính bằng mili giây trong Oracle

Mở rộng câu trả lời của René một chút, nếu bạn muốn tổng số mili giây thì bạn cần trích xuất và kết hợp tất cả các phần tử từ khoảng thời gian được tạo ra bằng cách trừ một dấu thời gian cho một dấu thời gian khác:

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, bao gồm cả ngày kỷ nguyên Unix để so sánh, mặc dù bạn cần điều chỉnh điều đó cho múi giờ máy chủ của mình.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. UPSERT vào bảng với tên bảng động

  2. Giám sát SQL trong nhà phát triển SQL

  3. Trình phân tích cú pháp cho Oracle SQL

  4. Java:Gọi một thủ tục được lưu trữ trong cơ sở dữ liệu oracle

  5. Cài đặt để xem phần thời gian với ngày trong nhà phát triển Oracle PL / SQL là gì?