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.
Kain Lap Microfiber Premium - Super Serap & Lembut
🌟 Bersihkan rumah, kendaraan, atau interior lebih maksimal dengan Kain Lap Microfiber premium! Super menyerap air, lembut, awet, cepat kering, dan efektif angkat debu tanpa lecet. Praktis untuk kebutuhan harian. ✨
~ shopee.co.id ~
Upgrade Jam Tanganmu Sekarang!
⚡ Smartwatch modern dengan fitur lengkap: detak jantung, olahraga, dan tahan air. Praktis & kekinian. 🌸
~ shopee.co.id ~
Artikel Terkait
Menggabungkan Teknik Time Blocking dengan Metode Pomodoro untuk Optimalisasi Cara Belajar Anda
Mengoptimalkan Waktu dengan Metode Belajar “Two-minute Rule”
Mengenal Tabel User dan Hak Akses di Dynamics AX 2009: Struktur dan Relasinya
Menguasai Materi dengan Cepat: Memahami Teknik Feynman
Menggabungkan Teknik Pomodoro dengan Metode GTD: Cara Efisien Mengelola Waktu Anda
Power Virtual Agents: Panduan Lengkap Buat Chatbot Tanpa Koding