Wandeln Sie INT in Hex um:
SELECT CONVERT(VARBINARY(8), 16777215)
Hex in INT umwandeln:
SELECT CONVERT(INT, 0xFFFFFF)
Aktualisierung 2015-03-16
Das obige Beispiel hat die Einschränkung, dass es nur funktioniert, wenn der HEX-Wert als Integer-Literal angegeben wird. Der Vollständigkeit halber, wenn der zu konvertierende Wert eine hexadezimale Zeichenfolge ist (wie sie beispielsweise in einer varchar-Spalte gefunden wird), verwenden Sie:
-- 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))
Hinweis: Die Zeichenfolge muss eine gerade Anzahl von Hexadezimalstellen enthalten. Eine ungerade Anzahl von Ziffern führt zu einem Fehler.
Weitere Einzelheiten finden Sie im Abschnitt "Binärstile" von CAST und CONVERT (Transact-SQL). Ich glaube, dass SQL Server 2008 oder höher erforderlich ist.