카테고리:

문자열 및 이진 함수 (압축/압축 풀기)

DECOMPRESS_BINARY

압축된 BINARY 입력 매개 변수의 압축을 풉니다.

참고 항목:

COMPRESS , DECOMPRESS_STRING

구문

DECOMPRESS_BINARY(<input>, <method>)
Copy

인자

필수:

input

COMPRESS 에 지정된 압축 메서드 중 하나를 사용하여 압축된 데이터가 있는 BINARY 값(또는 식)입니다.

압축된 BINARY 값이 아닌 압축된 문자열의 압축을 풀려고 하면 오류가 발생하지 않습니다. 대신 함수는 BINARY 값을 반환합니다. 자세한 내용은 아래 사용법 노트를 참조하십시오.

method

input 을 위해 원래 사용된 압축 메서드입니다. 압축 메서드 목록은 COMPRESS 를 참조하십시오.

DECOMPRESS_BINARY 메서드는 COMPRESS 메서드와 달리 압축 수준을 지정할 필요가 없습니다. 압축 수준을 지정하는 경우, DECOMPRESS_BINARY 는 이를 무시하고 실제 압축 수준을 사용합니다.

반환

반환된 값의 데이터 타입은 BINARY 입니다.

사용법 노트

  • 압축 메서드를 알 수 없거나 잘못된 경우, 쿼리가 실패합니다.

  • 압축 메서드 이름(예: ZLIB)은 대/소문자를 구분하지 않습니다.

  • DECOMPRESS_BINARY 함수는 원래 문자열 형식이었던 데이터의 압축을 풀 수 있습니다. 그러나 DECOMPRESS_BINARY 의 출력은 여전히 문자열이 아니라 BINARY 입니다. 예를 들어, SELECT DECOMPRESS_BINARY(COMPRESS('Hello', 'SNAPPY), 'SNAPPY')BINARY 값을 반환합니다. 해당 값을 표시하면 ‘Hello’의 16진수 표현인 48656C6C6F 로 표시됩니다. 혼동을 피하기 위해 Snowflake는 DECOMPRESS_BINARY 대신 DECOMPRESS_STRING 을 사용하여 문자열 데이터 압축을 풀 것을 권장합니다.

반환

압축이 풀린 데이터가 있는 BINARY 값입니다.

이는 압축된 값을 포함하는 BINARY 데이터의 압축을 푸는 간단한 예를 보여줍니다.

SELECT DECOMPRESS_BINARY(TO_BINARY('0920536E6F77666C616B65', 'HEX'), 'SNAPPY');
+-------------------------------------------------------------------------+
| DECOMPRESS_BINARY(TO_BINARY('0920536E6F77666C616B65', 'HEX'), 'SNAPPY') |
|-------------------------------------------------------------------------|
| 536E6F77666C616B65                                                      |
+-------------------------------------------------------------------------+
Copy