Categorias:

Funções de cadeia de caracteres e binários (Codificação/Decodificação)

HEX_DECODE_BINARY

Decodifica uma cadeia de caracteres codificada em hexadecimal para uma binária.

Consulte também:

TRY_HEX_DECODE_BINARY

Sintaxe

HEX_DECODE_BINARY(<input>)
Copy

Argumentos

input

Uma expressão de cadeia de caracteres contendo apenas dígitos hexadecimais. Normalmente, esta cadeia de caracteres de entrada é gerada pela chamada da função HEX_ENCODE.

Retornos

Um valor BINARY que pode, por exemplo, ser inserido em uma coluna do tipo BINARY.

Exemplos

Começar com uma cadeia de caracteres; codificá-la como caracteres representando dígitos hexadecimais; depois converter esses caracteres de dígitos hexadecimais em BINARY usando HEX_DECODE_BINARY:

Criar e preencher uma tabela:

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

Agora, recupere o valor BINARY e exiba-o como a cadeia de caracteres original (na terceira coluna da saída):

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

Decodificar um binário codificado em hexadecimal (saída por MD5_BINARY):

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

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