카테고리:

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

DECOMPRESS_STRING

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

참고 항목:

COMPRESS , DECOMPRESS_BINARY

구문

DECOMPRESS_STRING(<input>, <method>)
Copy

인자

필수:

input

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

method

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

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

반환

압축이 풀린 데이터가 있는 문자열입니다.

사용법 노트

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

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

  • DECOMPRESS_STRING 을 사용하여, 압축된 문자열 값이 아닌 압축된 BINARY 값의 압축을 풀면 반드시 오류가 발생하지는 않습니다. 대신 함수는 BINARY 값을 16진수 시퀀스로 처리한 다음 해당 16진수를 출력 가능한 문자로 변환하려고 시도합니다. Snowflake는 원본 데이터가 BINARY 인 경우, DECOMPRESS_BINARY 함수를 사용하여 압축 데이터의 압축을 풀 것을 권장합니다.

이는 문자열을 압축한 다음, 다시 원래 값으로 압축을 푸는 방법을 보여줍니다.

SELECT COMPRESS('Snowflake', 'SNAPPY');
+---------------------------------+
| COMPRESS('SNOWFLAKE', 'SNAPPY') |
|---------------------------------|
| 0920536E6F77666C616B65          |
+---------------------------------+
Copy
SELECT DECOMPRESS_STRING(TO_BINARY('0920536E6F77666C616B65', 'HEX'), 'SNAPPY');
+-------------------------------------------------------------------------+
| DECOMPRESS_STRING(TO_BINARY('0920536E6F77666C616B65', 'HEX'), 'SNAPPY') |
|-------------------------------------------------------------------------|
| Snowflake                                                               |
+-------------------------------------------------------------------------+
Copy