- 카테고리:
문자열 및 이진 함수 (인코딩/디코딩)
TRY_HEX_DECODE_BINARY¶
디코딩 중 오류가 발생하면 NULL 값을 반환하는 HEX_DECODE_BINARY 의 특수 버전입니다.
구문¶
TRY_HEX_DECODE_BINARY(<input>)
인자¶
input
16진수만 포함하는 문자열 식입니다. 일반적으로 이 입력 문자열은 HEX_ENCODE 함수를 호출하여 생성됩니다.
반환¶
BINARY
값으로, 예를 들어 BINARY
형식의 열에 삽입할 수 있는 값입니다.
예¶
이는 TRY_HEX_DECODE_BINARY
함수 사용 방법을 보여줍니다(함수는 BINARY 필드 로 디코딩하기 위해 INSERT
문에서 사용되며, 함수가 SELECT
문에서 사용되지 않음에 유의).
테이블과 데이터를 만듭니다.
CREATE TABLE hex (v VARCHAR, b BINARY); INSERT INTO hex (v, b) SELECT 'ABab', -- Convert string -> hex-encoded string -> binary. TRY_HEX_DECODE_BINARY(HEX_ENCODE('ABab'));이제 쿼리를 실행하여 데이터를 그대로 검색할 수 있음을 보여줍니다.
SELECT v, b, -- Convert binary -> hex-encoded-string -> string. TRY_HEX_DECODE_STRING(TO_VARCHAR(b)) FROM hex;출력:
+------+----------+--------------------------------------+ | V | B | TRY_HEX_DECODE_STRING(TO_VARCHAR(B)) | |------+----------+--------------------------------------| | ABab | 41426162 | ABab | +------+----------+--------------------------------------+