Hier zijn 3 manieren om van decimaal naar hexadecimaal te converteren in SQL Server.
Voorbeeld 1 – De CONVERT() Functie
Eerst gebruiken we de CONVERT()
functie. Hiermee kunt u tussen gegevenstypen in SQL Server converteren.
Hier is een voorbeeld van het gebruik van deze functie om een decimale waarde om te zetten in hexadecimaal:
SELECT CONVERT(VARBINARY(8), 64683) Result;
Resultaat:
+------------+ | Result | |------------| | 0x0000FCAB | +------------+
In dit geval converteren we de decimale waarde 64683
naar VARBINARY(8) .
Voorbeeld 2 – De CAST()-functie
We kunnen ook de CAST()
. gebruiken functie om hetzelfde te doen als in het vorige voorbeeld:
SELECT CAST(64683 AS VARBINARY(8)) Result;
Resultaat:
+------------+ | Result | |------------| | 0x0000FCAB | +------------+
Merk op dat CAST()
en CONVERT()
gebruik iets andere syntaxis. In het geval van CAST()
de te casten waarde komt eerst, terwijl het andersom is met CONVERT()
.
Voorbeeld 3 – De FORMAT() Functie
We kunnen ook de FORMAT()
. gebruiken functie om de decimale waarde op te maken als een hexadecimale tekenreeks.
SELECT FORMAT(64683, 'X') Result;
Resultaat:
+----------+ | Result | |----------| | FCAB | +----------+
De X
argument is wat specificeert dat het resulterende formaat hexadecimaal moet zijn.
U kunt ook een kleine letter x
. gebruiken om aan te geven dat het resultaat kleine letters gebruikt:
SELECT FORMAT(64683, 'x') Result;
Resultaat:
+----------+ | Result | |----------| | fcab | +----------+
De retourwaarde van deze functie is nvarchar . Dit is anders dan de andere twee functies, die de waarde als een binaire constante retourneren (je kunt dit zien aan de 0x
voorvoegsel).