Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Oracle:Hitung perbedaan waktu dalam HH:MM:SS antara 2 tanggal

Apakah tanggal dalam tipe varchar2? Kemudian, Anda dapat mengubahnya menjadi format timestamp terlebih dahulu. Karena memiliki zona waktu juga, gunakan fungsi to_timestamp_tz.

SQL> select to_timestamp_tz('Sun Dec 29 11:55:29 EST 2013','Dy Mon dd hh24:mi:ss TZR yyyy') from dual;

TO_TIMESTAMP_TZ('SUNDEC2911:55:29EST2013','DYMONDDHH24:MI:SSTZRYYYY')
---------------------------------------------------------------------------
29-DEC-13 11.55.29.000000000 AM EST

Setelah tanggal berada dalam tipe stempel waktu, mengurangkannya akan memberi Anda perbedaan dalam interval hari ke tipe kedua.

SQL> select   to_timestamp_tz ('Mon Dec 30 20:21:34 EST 2013','Dy Mon dd hh24:mi:ss TZR yyyy')
  2         - to_timestamp_tz ('Sun Dec 29 11:55:29 EST 2013','Dy Mon dd hh24:mi:ss TZR yyyy') from dual;

TO_TIMESTAMP_TZ('MONDEC3020:21:34EST2013','DYMONDDHH24:MI:SSTZRYYYY')-TO_TI
---------------------------------------------------------------------------
+000000001 08:26:05.000000000

Kemudian gunakan ekstrak untuk mendapatkan komponen individual dari interval.

SQL> select extract(day from intrvl) as dd,
  2         extract(hour from intrvl) as hh24,
  3         extract(minute from intrvl) as mi,
  4         extract(second from intrvl) as ss
  5  from (
  6        select   to_timestamp_tz ('Mon Dec 30 20:21:34 EST 2013','Dy Mon dd hh24:mi:ss TZR yyyy')
  7               - to_timestamp_tz ('Sun Dec 29 11:55:29 EST 2013','Dy Mon dd hh24:mi:ss TZR yyyy') as intrvl
  8       from dual
  9       );

        DD       HH24         MI         SS
---------- ---------- ---------- ----------
         1          8         26          5


  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 SELECT TOP 10 catatan

  2. Menyetel ukuran pengambilan baris Oracle lebih tinggi membuat aplikasi saya lebih lambat?

  3. Cara mendapatkan usia dalam tahun, bulan, dan hari menggunakan Oracle

  4. Jaring Pengaman

  5. Prosedur Tersimpan Java Vs Prosedur Tersimpan PL/SQL