Kasus :
Menampilkan angka dalam format 001,002,003...999.
Solving :
Di VB atau bahasa pemrograman lainnya kita bisa lakukan dengan mudah karena memang sudah ada function yang menangani hal tersebut, akan tetapi di SQL Server setau saya belum ada.
Dari hasil googling dapat solusi di website ini
https://bytes.com/topic/sql-server/answers/600927-sql-format-function-0000-a jawaban dari Plamne Ratchev. Ratchev memberikan solusi sbb,
SELECT RIGHT('0000' + CAST(1 as varchar), 4)
atau,
SELECT RIGHT('0000' + CAST(code as varchar), 4) FROM Employes
setelah dicoba, ternyata ok.
Agar lebih memudahkan dan biar ga lupa lagi jika diperlukan maka kemudian solusi tersebut saya buatkan functionnya di SQL, dengan dibuatkan functionnya maka setidaknya penulisannya bisa lebih sederhana. berikut ini script functionnya,
CREATE FUNCTION FORMATANGKA(@ANGKA2FORMAT INT
, @BTKFORMAT VARCHAR(64)
, @PJGFORMAT SMALLINT)
RETURNS VARCHAR(64) AS
BEGIN
RETURN RIGHT(@BTKFORMAT + CAST(@ANGKA2FORMAT as varchar), LEN(@BTKFORMAT))
END
dan berikut cara penggunaannya,
SELECT dbo.FORMATANGKA(3,'00')
Bisakah digunakan untuk column dari table? sepanjang column tersebut bertipe data number dipastikan bisa.
Selamat mencoba dan semoga bermanfaat...