Catégories :

Fonctions de chaîne et fonctions binaires (Encodage/Décodage)

HEX_DECODE_BINARY

Décode une chaîne codée en hexadécimal pour en faire un binaire.

Voir aussi :

TRY_HEX_DECODE_BINARY

Syntaxe

HEX_DECODE_BINARY(<input>)

Arguments

entrée

Une expression de chaîne contenant uniquement des chiffres hexadécimaux. En règle générale, cette chaîne d’entrée est générée en appelant la fonction HEX_ENCODE.

Renvoie

Une valeur BINARY pouvant, par exemple, être insérée dans une colonne de type BINARY.

Exemples

Commencer par une chaîne ; l’encoder en tant que caractères représentant des chiffres hexadécimaux ; puis convertir ces caractères hexadécimaux en BINARY en utilisant HEX_DECODE_BINARY :

Créez et remplissez une table :

CREATE TABLE binary_table (v VARCHAR, b BINARY);
INSERT INTO binary_table (v, b) 
    SELECT 'HELLO', HEX_DECODE_BINARY(HEX_ENCODE('HELLO'));

Récupérer maintenant la valeur BINARY et l’afficher en tant que chaîne d’origine (dans la 3e colonne de la sortie) :

SELECT v, b, HEX_DECODE_STRING(TO_VARCHAR(b)) FROM binary_table;
+-------+------------+----------------------------------+
| V     | B          | HEX_DECODE_STRING(TO_VARCHAR(B)) |
|-------+------------+----------------------------------|
| HELLO | 48454C4C4F | HELLO                            |
+-------+------------+----------------------------------+

Décodage d’un binaire codé en hexadécimal (sortie par MD5_BINARY) :

SELECT HEX_DECODE_BINARY(HEX_ENCODE(MD5_BINARY('Snowflake')));

--------------------------------------------------------+
 HEX_DECODE_BINARY(HEX_ENCODE(MD5_BINARY('SNOWFLAKE'))) |
--------------------------------------------------------+
 EDF1439075A83A447FB8B630DDC9C8DE                       |
--------------------------------------------------------+