Menghitung Hari Kerja [Senin – Jumat]

Kalendar dalam SQL itu sering digunakan jika kita membuat atau mengembangkan suatu aplikasi perusahaan.  Perhitungan hari kerja sering digunakan dalam aplikasi produksi, presensi / absensi, cuti, dll.

Perhitungan hari menggunakan basic function DATEDIFF pada SQL, sebagai berikut : SELECT DATEDIFF(dd,@tgl_awal, @tgl_akhir). Maka hasil dari function tersebut adalah seperti menggunakan function BETWEEN.
Perlu diperhatikan dalam function di atas maka hari / tgl_akhir tidak termasuk dalam hitungan.

Kasus berkembang, jika perhitungan hari kerja. Dalam satu minggu terdapat 5 HK (Sein – Jumat), maka dapat menggunakan function sebagai berikut :
SELECT
(DATEDIFF(dd, @awal, @akhir) + 1)
-(DATEDIFF(wk, @awal, @akhir) * 2)
-(CASE WHEN DATENAME(dw, @awal) = ‘Sunday’ THEN 1 ELSE 0 END)
-(CASE WHEN DATENAME(dw, @akhir) = ‘Saturday’ THEN 1 ELSE 0 END)

Pada artikel ini dapat dikembangkan untuk menghitung banyaknya HK cuti dengan menggunakan masukkan tanggal awal dan tanggal akhir.

Semoga bermanfaat buat kita semua.

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s