Có một hàm tích hợp để tạo ra các chuỗi hex từ các giá trị nhị phân
SELECT
'#' + sys.fn_varbintohexstr(CONVERT(BINARY(3), 0)),
'#' + sys.fn_varbintohexstr(CONVERT(BINARY(3), 255))
Bạn cần binary(3)
để đảm bảo độ dài chính xác của chuỗi đầu ra
Điều này là sai. Bạn nhận được 4 chữ số hex vì 0 và 255 ở đây là 4 byte int
giá trị
SELECT
'#' + sys.fn_varbintohexstr(CONVERT(varBINARY(8), 0)),
'#' + sys.fn_varbintohexstr(CONVERT(varBINARY(8), 255))
Cập nhật tháng 10 năm 2017:
Chuyển đổi hiện đã được tích hợp sẵn sang SQL Server (kể từ năm 2008 !!), vì vậy chúng tôi có thể chỉ cần sử dụng CONVERT
SELECT '#' + CONVERT(char(6), CONVERT(BINARY(3), 2570841), 2)