Преобразувайте INT в шестнадесетичен:
SELECT CONVERT(VARBINARY(8), 16777215)
Преобразуване на шестнадесетичен в INT:
SELECT CONVERT(INT, 0xFFFFFF)
Актуализация 2015-03-16
Горният пример има ограничението, че работи само когато HEX стойността е дадена като целочислен литерал. За пълнота, ако стойността за преобразуване е шестнадесетичен низ (като намерен в колона varchar), използвайте:
-- If the '0x' marker is present:
SELECT CONVERT(INT, CONVERT(VARBINARY, '0x1FFFFF', 1))
-- If the '0x' marker is NOT present:
SELECT CONVERT(INT, CONVERT(VARBINARY, '1FFFFF', 2))
Забележка: Низът трябва да съдържа четен брой шестнадесетични цифри. Нечетен брой цифри ще доведе до грешка.
Повече подробности можете да намерите в раздела "Двоични стилове" на CAST и CONVERT (Transact-SQL). Смятам, че е необходим SQL Server 2008 или по-нова версия.