Categorias:

Funções de cadeia de caracteres e binários (Compressão/Descompressão)

DECOMPRESS_BINARY

Descomprime o parâmetro de entrada BINARY comprimido.

Consulte também:

COMPRESS , DECOMPRESS_STRING

Sintaxe

DECOMPRESS_BINARY(<input>, <method>)
Copy

Argumentos

Obrigatório:

input

Um valor BINARY (ou expressão) com dados que foram comprimidos usando um dos métodos de compressão especificados em COMPRESS.

Se você tentar descomprimir uma cadeia de caracteres comprimida, em vez de um valor BINARY comprimido, você não recebe um erro; em vez disso, a função retorna um valor BINARY. Consulte as Notas de Uso abaixo para obter detalhes.

method

O método de compressão usado originalmente para comprimir o input. Consulte COMPRESS para obter uma lista de métodos de compressão.

O método DECOMPRESS_BINARY, ao contrário do método COMPRESS, não exige que você especifique o nível de compressão. Se você especificar o nível de compressão, DECOMPRESS_BINARY o ignora e usa o nível de compressão real.

Retornos

O tipo de dados do valor retornado é BINARY.

Notas de uso

  • Se o método de compressão for desconhecido ou inválido, a consulta falha.

  • O nome do método de compressão (por exemplo, ZLIB) não diferencia maiúsculas e minúsculas.

  • A função DECOMPRESS_BINARY pode descomprimir dados que estavam originalmente em formato de cadeia de caracteres. No entanto, a saída de DECOMPRESS_BINARY ainda é BINARY, e não cadeia de caracteres. Por exemplo, SELECT DECOMPRESS_BINARY(COMPRESS('Hello', 'SNAPPY), 'SNAPPY') retorna um valor BINARY; se você exibir esse valor, ele é mostrado como 48656C6C6F, que é a representação hexadecimal de ‘Hello’. Para evitar confusão, Snowflake recomenda descomprimir os dados das cadeias de caracteres usando DECOMPRESS_STRING em vez de DECOMPRESS_BINARY.

Retornos

Um valor BINARY com dados descomprimidos.

Exemplos

Isso mostra um exemplo simples de dados descomprimidos BINARY que contém um valor comprimido.

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