- カテゴリ:
文字列とバイナリ関数 (圧縮/解凍)
DECOMPRESS_BINARY¶
圧縮された BINARY
入力パラメーターを解凍します。
- こちらもご参照ください。
構文¶
DECOMPRESS_BINARY(<input>, <method>)
引数¶
必須:
input
COMPRESS で指定された圧縮方法のいずれかを使用して圧縮されたデータを含む
BINARY
値(または式)です。圧縮された
BINARY
値ではなく、圧縮された文字列を解凍しようとしても、エラーは発生しません。関数はBINARY
値を返します。詳細については、以下の使用上の注意をご参照ください。method
元々
input
の圧縮に使用された圧縮方法です。圧縮方法のリストについては、 COMPRESS をご参照ください。COMPRESS
方法とは異なり、DECOMPRESS_BINARY
方法では、圧縮レベルを指定する必要はありません。圧縮レベルを指定すると、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 |
+-------------------------------------------------------------------------+