Cara Mengonversi Nomor Datepart menjadi Nama Hari di SQL Server

Jika Anda pernah bekerja dengan SQL Server, Anda mungkin menemui situasi di mana Anda perlu mengekstrak bagian tertentu dari tanggal agar lebih mudah dipahami dan digunakan. Salah satu kebutuhan umum adalah mengonversi representasi numerik dari suatu hari—yang diperoleh dari fungsi datepart—menjadi nama yang sesuai (seperti “Senin” atau “Selasa”). Dalam pos blog ini, kita akan menjelajahi bagaimana cara cepat untuk mencapai konversi ini di SQL Server.

Memahami Masalah

Ketika Anda menggunakan fungsi SQL Server datepart, mengambil hari dalam seminggu dari suatu tanggal akan memberi Anda angka antara 1 dan 7, di mana:

  • 1 = Minggu
  • 2 = Senin
  • 3 = Selasa
  • 4 = Rabu
  • 5 = Kamis
  • 6 = Jumat
  • 7 = Sabtu

Sebagai contoh, menjalankan query berikut mengembalikan hari dalam seminggu sebagai sebuah angka:

SELECT DATEPART(dw, GETDATE());

Walaupun nilai numerik ini bisa berguna, tetapi tidak terlalu ramah pengguna; tujuan kita adalah mengonversi keluaran numerik ini menjadi format yang lebih mudah dibaca, khususnya nama hari.

Solusi: Menggunakan datename

Untuk mendapatkan nama hari bukannya angka, Anda dapat memanfaatkan fungsi DATENAME di SQL Server. Fungsi DATENAME memungkinkan Anda mengembalikan nama dari bagian tanggal tertentu untuk tanggal yang ditentukan. Berikut adalah cara melakukannya:

Langkah 1: Menggunakan Fungsi DATENAME

Anda dapat dengan mudah menggantikan fungsi datepart dengan datename dalam query SQL Anda sebagai berikut:

SELECT DATENAME(weekday, GETDATE());

Penjelasan Query:

  • DATENAME: Fungsi ini mengambil dua parameter; yang pertama adalah bagian tanggal yang ingin Anda ambil (dalam hal ini, weekday), dan yang kedua adalah tanggal dari mana Anda ingin mengekstrak informasi (dalam hal ini, tanggal saat ini yang dikembalikan oleh GETDATE()).
  • GETDATE(): Fungsi ini mengembalikan cap waktu sistem basis data saat ini.

Langkah 2: Menjalankan Query

Ketika Anda menjalankan pernyataan SELECT di atas, ini akan mengembalikan nama hari saat ini, misalnya “Minggu,” “Senin,” dan seterusnya, sehingga menjadi jauh lebih mudah dipahami sekilas.

Kesimpulan

Dengan menggunakan fungsi DATENAME di SQL Server, Anda dapat dengan mudah mengonversi representasi hari numerik menjadi nama hari yang lebih bermakna. Satu baris perintah sederhana ini dapat menghemat waktu Anda dan membuat keluaran data Anda jauh lebih dapat diinterpretasikan, terutama dalam laporan atau antarmuka pengguna.

Ketika Anda perlu mengambil hari dalam minggu di SQL Server, ingatlah bahwa mengubah angka menjadi namanya hanya memerlukan query cepat!

Jangan ragu untuk bereksperimen dengan tanggal yang berbeda dengan mengganti GETDATE() dengan nilai tanggal spesifik Anda untuk melihat bagaimana fungsi-fungsi ini bekerja!