카테고리:

문자열 및 이진 함수 (인코딩/디코딩)

HEX_DECODE_STRING

16진수로 인코딩된 문자열을 문자열로 디코딩합니다.

참고 항목:

TRY_HEX_DECODE_STRING

구문

HEX_DECODE_STRING(<input>)
Copy

인자

input

16진수로 인코딩된 문자열 식입니다. 일반적으로 입력은 HEX_ENCODE 에 대한 호출에 의해 만들어졌습니다.

반환

반환된 값은 문자열(VARCHAR)입니다.

다음은 일련의 16진수 숫자를 해당 단어로 디코딩합니다.

SELECT HEX_DECODE_STRING('536E6F77666C616B65');

-----------------------------------------+
 HEX_DECODE_STRING('536E6F77666C616B65') |
-----------------------------------------+
 Snowflake                               |
-----------------------------------------+
Copy

16진수 AF는 대문자 또는 소문자일 수 있습니다. 다음 문은 소문자를 사용하지만, 이전 문과 동일한 결과를 생성합니다.

SELECT HEX_DECODE_STRING('536e6f77666c616b65');

-----------------------------------------+
 HEX_DECODE_STRING('536E6F77666C616B65') |
-----------------------------------------+
 Snowflake                               |
-----------------------------------------+
Copy

이는 HEX_DECODE_STRING 을 사용하는 또 다른 예를 보여줍니다.

테이블과 데이터를 만듭니다.

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

이제 쿼리를 실행하여 데이터를 검색할 수 있음을 보여줍니다.

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