카테고리:

변환 함수

TO_BINARY

입력 식을 이진 값으로 변환합니다. NULL 입력의 경우, 출력은 NULL입니다.

참고 항목:

구문

TO_BINARY( <string_expr> [, '<format>'] )
TO_BINARY( <variant_expr> )
Copy

반환

반환 형식은 BINARY입니다.

인자

필수:

string_expr

문자열 식입니다.

선택 사항:

format

변환을 위한 이진 형식: HEX, BASE64 또는 UTF-8(Binary Input and Output 참조). 기본값은 BINARY_INPUT_FORMAT 세션 매개 변수의 값입니다. 이 매개 변수가 설정되지 않은 경우, 기본값은 HEX입니다.

반환

BINARY 형식의 값을 반환합니다.

이 예는 TO_BINARY 가 호출될 때의 출력을 보여줍니다.

이 예는 VARCHARBINARY 로 변환한 다음, 원래 형식(VARCHAR)으로 되돌리는 방법을 보여줍니다.

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

CREATE TABLE binary_test (v VARCHAR, b BINARY);
INSERT INTO binary_test(v) VALUES ('SNOW');
Copy

VARCHARBINARY 로 변환합니다.

UPDATE binary_test SET b = TO_BINARY(HEX_ENCODE(v), 'HEX');
Copy

쿼리를 실행하고 출력을 표시합니다.

SELECT v, HEX_DECODE_STRING(TO_VARCHAR(b, 'HEX')) FROM binary_test;
+------+-----------------------------------------+
| V    | HEX_DECODE_STRING(TO_VARCHAR(B, 'HEX')) |
|------+-----------------------------------------|
| SNOW | SNOW                                    |
+------+-----------------------------------------+
Copy

이 예는 UTF-8 문자의 문자열을 BINARY 로 변환하는 방법을 보여줍니다. 기본적으로 SNOWSQL은 BINARY 값을 UTF-8 및 내부 BINARY 형식이 아닌 16진수 문자열로 표시합니다.

SELECT TO_BINARY('SNOW', 'utf-8');
+----------------------------+
| TO_BINARY('SNOW', 'UTF-8') |
|----------------------------|
| 534E4F57                   |
+----------------------------+
Copy

이 예는 출력이 16진수를 포함하는 문자열임이 더 분명하도록 출력을 16진수로 명시적으로 변환한다는 점을 제외하고는 앞의 예와 동일합니다.

SELECT TO_VARCHAR(TO_BINARY('SNOW', 'utf-8'), 'HEX');
+-----------------------------------------------+
| TO_VARCHAR(TO_BINARY('SNOW', 'UTF-8'), 'HEX') |
|-----------------------------------------------|
| 534E4F57                                      |
+-----------------------------------------------+
Copy