Función compress()

La función compress() comprime un varchar o nvarchar con la biblioteca de software zlib de origen público. La biblioteca zlib utiliza el algoritmo de compresión DEFLATE, una variación de Lempel-Ziv 1977 (LZ77).

La compresión es el proceso de codificar datos para que utilicen menos bits. Por ejemplo, la compresión sustituye instancias de caracteres contiguos y repetidos con un solo carácter y un recuento. Debe descomprimir los datos comprimidos para poder utilizarlos.

Importante: Para procesar valores nvarchar, debe utilizar la función ' compress_nvarchar() ' en lugar de la función ' compress() ' y la función ' decompress_nvarchar() ' en lugar de la función ' decompress() '. La función compress() se conserva para ofrecer compatibilidad con las versiones y resultados anteriores, pero las tablas y las vistas que almacenan los valores de función compress('NVARCHAR') podrían encontrar problemas durante las cargas y las operaciones GENERATE STATISTICS.

Sintaxis

La función compress() tiene la siguiente sintaxis:
varchar = compress(varchar input[, int level]);
nvarchar = compress(nvarchar input[, int level]);

El valor ' input ' especifica el valor varchar o nvarchar a comprimir.

El valor ' level ' especifica el nivel de compresión que se utiliza. Puede ser 0 - 9, con 0 que indica la menor compresión y 9 que indica la mayor compresión. El valor por defecto es 6. Si se aumenta el nivel de compresión, se aumentará el tiempo de proceso.

Devuelve

La función devuelve el valor comprimido.

Ejemplo

select compress('1234567890');
   COMPRESS
--------------
 x3426153·˚4
(1 row)