Cara Memotong
Tempat Desimal di SQL Server Tanpa Pembulatan
Saat bekerja dengan nilai desimal di SQL Server, Anda kadang-kadang mungkin menemukan kebutuhan untuk mengelola jumlah tempat desimal dalam data Anda. Fungsi ROUND
yang umum digunakan membulatkan angka, yang mungkin tidak sesuai untuk semua skenario. Dalam posting blog ini, kita akan mengeksplorasi cara untuk memotong tempat desimal di SQL Server tanpa membulatkannya.
Masalah: Pembulatan vs. Pemotongan
Bayangkan Anda memiliki nilai desimal seperti 123.456
, dan Anda ingin menyimpannya hingga dua tempat desimal. Menggunakan metode pembulatan standar di SQL Server akan secara otomatis menyesuaikan nilai menjadi 123.46
. Namun, ada situasi di mana Anda hanya ingin menghilangkan desimal tambahan, sehingga hasilnya menjadi 123.45
. Di sinilah pemotongan menjadi penting.
Mari kita lihat sekilas pada contoh nilai:
DECLARE @value DECIMAL(18,2);
SET @value = 123.456;
Setelah mengeksekusi kode ini dengan pembulatan standar, @value
akan menjadi 123.46
. Tetapi bagaimana jika Anda ingin menyimpannya sebagai 123.45
?
Solusi: Menggunakan Fungsi ROUND
SQL Server menyediakan fungsi ROUND
yang kuat yang dapat membantu Anda memotong tempat desimal. Fungsi ini membutuhkan tiga parameter:
- number: Ini adalah nilai desimal yang ingin Anda potong.
- decimals: Tentukan berapa banyak tempat desimal yang ingin Anda pertahankan.
- operation: Ini bersifat opsional. Atur parameter ini ke
0
untuk membulatkan hasil atau ke nilai lain (misalnya,1
) untuk memotongnya.
Contoh Penggunaan
Berikut adalah cara Anda dapat menggunakan fungsi ROUND
secara efektif:
SELECT ROUND(123.456, 2, 1);
Dalam hal ini, menggunakan 1
sebagai parameter ketiga akan memotong nilai menjadi 123.45
, alih-alih membulatkannya.
Kompatibilitas
Fungsi ROUND
dengan kemampuan pemotongan bekerja di lingkungan berikut:
- SQL Server (dimulai dengan versi 2008)
- Azure SQL Database
- Azure SQL Data Warehouse
- Parallel Data Warehouse
Untuk informasi lebih lanjut, Anda dapat merujuk ke dokumen ROUND SQL Server di W3Schools.
Kesimpulan
Dengan menggunakan fungsi ROUND
dengan parameter yang sesuai, Anda dapat dengan mudah memotong tempat desimal di SQL Server tanpa membulatkan nilai Anda. Metode ini memastikan Anda memiliki kontrol yang tepat atas presentasi data Anda, mempertahankan integritas dan akurasi yang diperlukan untuk kebutuhan proyek spesifik Anda.
Silakan coba teknik ini di lingkungan SQL Server Anda sendiri dan pastikan data Anda diformat persis seperti yang Anda butuhkan!