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

Oracle SQl Dev, cara menghitung jumlah hari kerja antara 2 tanggal

Jawaban ini mirip dengan Nicholas, yang tidak mengejutkan karena Anda memerlukan subquery dengan CONNECT BY untuk memutar daftar tanggal. Tanggal kemudian dapat dihitung sambil memeriksa hari dalam seminggu. Perbedaannya di sini adalah menunjukkan cara mendapatkan nilai hitungan hari kerja pada setiap baris hasil:

SELECT
  FromDate,
  ThruDate,
  (SELECT COUNT(*)
     FROM DUAL
     WHERE TO_CHAR(FromDate + LEVEL - 1, 'DY') NOT IN ('SAT', 'SUN')
     CONNECT BY LEVEL <= ThruDate - FromDate + 1
  ) AS Weekday_Count
FROM myTable

Hitungannya inklusif, artinya termasuk FromDate dan ThruDate . Kueri ini mengasumsikan bahwa tanggal Anda tidak memiliki komponen waktu; jika ya, Anda harus TRUNC kolom tanggal dalam subkueri.



  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 SQL Error:ORA-00923:Dari Kata Kunci tidak ditemukan di tempat yang diharapkan

  2. Jauhkan pesanan dari klausa 'IN'

  3. Utilitas ADODFCMP

  4. Prosedur PL/SQL berhasil diselesaikan tetapi tidak menunjukkan apa-apa

  5. Fungsi pipa memanggil fungsi pipa lainnya