Ada fungsi bawaan untuk menghasilkan hex string dari nilai biner
SELECT
'#' + sys.fn_varbintohexstr(CONVERT(BINARY(3), 0)),
'#' + sys.fn_varbintohexstr(CONVERT(BINARY(3), 255))
Anda memerlukan binary(3)
untuk memastikan panjang yang benar dari string keluaran
Ini salah. Anda mendapatkan 4 digit hex karena 0 dan 255 di sini adalah 4 byte int
nilai
SELECT
'#' + sys.fn_varbintohexstr(CONVERT(varBINARY(8), 0)),
'#' + sys.fn_varbintohexstr(CONVERT(varBINARY(8), 255))
Pembaruan Oktober 2017:
Konversi sekarang terintegrasi ke SQL Server (sejak 2008!!) jadi kita cukup menggunakan CONVERT
SELECT '#' + CONVERT(char(6), CONVERT(BINARY(3), 2570841), 2)