HEX_DECODE_BINARY

HEX_DECODE_BINARY

hex(16진수)로 인코딩된 문자열을 바이너리로 디코딩하는 함수예요. 보통 HEX_ENCODE로 만든 문자열을 다시 바이너리로 되돌릴 때 써요.

출처: 공식 문서

본문

hex로 인코딩된 문자열을 바이너리로 디코딩합니다.

참고 (See also): TRY_HEX_DECODE_BINARY

구문 (Syntax)

HEX_DECODE_BINARY(<input>)

인자 (Arguments)

input

16진수 숫자만 포함하는 문자열 표현식입니다. 보통 이 입력 문자열은 HEX_ENCODE 함수를 호출해 생성됩니다.

반환값 (Returns)

예를 들어 BINARY 타입의 컬럼에 삽입할 수 있는 BINARY 값을 반환합니다.

예제 (Examples)

문자열로 시작해서, 이를 16진수 숫자를 나타내는 문자들로 인코딩하고, 그런 다음 그 hex 숫자 문자들을 HEX_DECODE_BINARY를 사용해 BINARY로 변환합니다:

테이블을 만들고 채웁니다:

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

이제 BINARY 값을 가져와 원래 문자열로 표시합니다(출력의 3번째 컬럼):

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

hex로 인코딩된 바이너리(MD5_BINARY가 출력한)를 디코딩합니다:

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

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

더 알아보기 (Learn more)