Setara fungsi DATEDIFF dari SQL Server di bawah Oracle.

DATEDIFF adalah fungsi biasa dalam SQL Server untuk mencari bilangan hari antara dua tarikh. Sama juga, rakan sejawatannya, salah satu Sistem Pengurusan Pangkalan Data Relasi yang paling mantap Oracle menawarkan penyelesaian sendiri, walaupun Oracle tidak mempunyai fungsi DATEDIFF. Fungsi trunc () boleh digunakan untuk mengira bilangan hari. Jika tidak, ia boleh didarabkan sebanyak 24, 1440 atau 86400 untuk mengira bilangan hari dalam jam, minit & saat. Begitu juga, bulat () boleh digunakan untuk mendapatkan hari yang terdekat.

Isu

Apakah fungsi dalam Oracle yang akan menjadi sama dengan DATEDIFF dalam SQL Server?

Saya ingin mengetahui perbezaan yang boleh wujud antara dua tarikh, sama ada dalam bulan atau hari atau jam atau minit ....

Penyelesaian

Pada Oracle, ia merupakan isu aritmetik

 pilih DATE1-DATE2 dari dwi 

1 = 1 hari, angka selepas koma mewakili sebahagian kecil daripada hari.

Gunakan trunc () untuk bilangan hari

Jika tidak, tambahkan nilai

  • oleh 24 jam
  • oleh 1440 selama beberapa minit
  • oleh 86400 selama beberapa saat

Terima kasih kepada Krysstof untuk tip ini.

Artikel Sebelumnya Artikel Seterusnya

Tip-Tip Utama