SQL Server menyediakan banyak fungsi dan syntax query yang bisa membantu developer maupun data analyst dalam mengolah data secara efisien.
Melalui artikel ini, kami akan berbagi beberapa fungsi dan syntax query pilihan yang sering digunakan dalam praktik sehari-hari berikut ini:
1. Membuat Date Key
Untuk menghasilkan **date_key** dalam format `YYYYMMDD`, kita bisa menggunakan syntax berikut:
CONVERT(INT, CONVERT(VARCHAR(8), GETDATE(), 112)) AS date_key
Syntax ini akan mengubah tanggal saat ini (`GETDATE()`) menjadi string dengan format `YYYYMMDD`, lalu dikonversi ke integer. Hasilnya bisa digunakan sebagai primary key atau reference di tabel fact dalam data warehouse.
2. Membuat Time Key
Selain date key, kita juga bisa membuat **time_key** dalam format `HHMMSS`. Caranya:
CONVERT(INT, REPLACE(CONVERT(VARCHAR(8), GETDATE(), 108), ‘:’, ”)) AS time_key
Catatan:
- Format `108` menghasilkan waktu `hh:mm:ss`.
- Fungsi `REPLACE` menghapus tanda `:` sehingga menjadi `hhmmss`.
- Lalu dikonversi ke integer agar lebih mudah digunakan sebagai key.
Contoh hasil: `153045` untuk jam 15:30:45.
3. Menggabungkan Date Key dan Time Key
Jika ingin membuat satu key unik yang berisi tanggal dan waktu sekaligus, gunakan:
CONVERT(BIGINT,
CONVERT(VARCHAR(8), GETDATE(), 112) +
REPLACE(CONVERT(VARCHAR(8), GETDATE(), 108), ‘:’, ”)
) AS datetime_key
Hasilnya berupa `YYYYMMDDHHMMSS`, misalnya `20260223153045`.
4. Memperoleh Selisih Waktu
Kalau tujuan Anda adalah menghitung selisih waktu (durasi) antara GETDATE() dan variabel tertentu (misalnya variable @waktu), biasanya digunakan fungsi DATEDIFF. Berikut ini adalah contoh-nya:
— Menghitung selisih dalam detik
SELECT DATEDIFF(SECOND, @waktu, GETDATE()) AS SelisihDetik;
Jika ingin menampilkan hasilnya dalam format time, Anda bisa mengonversinya dengan DATEADD lalu CONVERT:
— Konversi selisih ke tipe TIME
SELECT CONVERT(TIME, DATEADD(SECOND, DATEDIFF(SECOND, @waktu, GETDATE()), ’00:00:00′)) AS SelisihWaktu;
📌 Penjelasan:
DATEDIFF(SECOND, @waktu, GETDATE()) → menghitung jumlah detik selisih.
DATEADD(SECOND, …, ’00:00:00′) → menambahkan selisih detik ke waktu dasar ’00:00:00′.
CONVERT(TIME, …) → hasil akhirnya berupa tipe time.
Daftar syntax SQL Server pilihan diatas akan terus diperbarui secara periodik agar tetap relevan dengan kebutuhan pengolahan data. Dengan memanfaatkan fungsi-fungsi ini, Anda bisa lebih mudah membangun query yang efisien, rapi, dan siap digunakan dalam berbagai skenario bisnis maupun analisis data.
Upgrade Jam Tanganmu Sekarang!
🌟 Smartwatch modern dengan fitur lengkap: detak jantung, olahraga, dan tahan air. Praktis & kekinian. ✨
~ shopee.co.id ~
Bonbox Premium Spin Mop 2in1 – Pel Modern Lebih Praktis
⚡ Bersihkan rumah lebih cepat dengan Bonbox Premium 2in1! Ember cuci & bilas otomatis, kepala pel 360°, tongkat stainless teleskopik, dan microfiber tebal. Praktis, higienis, tanpa repot memeras tangan. 🌸
~ shopee.co.id ~
Artikel Terkait
Daftar CHAR dan Unicode di SQL Server untuk Membersihkan Data (Lengkap & Praktis)
Panik! Panduan Lengkap Ketika Bitcoin Anjlok Drastis – Apa yang Harus Anda Lakukan Sekarang?
Contoh Aplikasi Sederhana: “Hello World” di Microsoft Power Apps
Cara Menjalankan Aplikasi Power Apps Setelah Publish
Transformasi Kinerja dan Kesejahteraan Mental: Magisnya Teknik Pomodoro bagi Pelajar dan Mahasiswa
Menguasai Materi dengan Cepat: Memahami Teknik Feynman