fonction compress()

La fonction 'compress() compresse une valeur varchar ou nvarchar en utilisant la bibliothèque logicielle publique zlib. La bibliothèque zlib utilise l'algorithme de compression DEFLATE, une variante de Lempel-Ziv 1977LZ77

La compression est le processus d'encodage des données de manière à ce qu'elles utilisent moins de bits. Par exemple, la compression remplace les instances de caractères contigus et répétés par un seul caractère et un nombre. Vous devez décompresser les données compressées avant de pouvoir les utiliser.

Important : pour traiter des valeurs nvarchar, vous devez utiliser la fonction " compress_nvarchar() au lieu de la fonction " compress() et la fonction " decompress_nvarchar() au lieu de la fonction " decompress(). La fonction " compress() est conservée pour des raisons de compatibilité avec les versions et les résultats antérieurs, mais les tables et les vues qui stockent les valeurs de la fonction " compress('NVARCHAR') peuvent rencontrer des problèmes lors des chargements et des opérations de génération de statistiques.

Syntaxe

La fonction " compress() a la syntaxe suivante :
varchar = compress(varchar input[, int level]);
nvarchar = compress(nvarchar input[, int level]);

La valeur " input spécifie la valeur varchar ou nvarchar à compresser.

La valeur " level indique le niveau de compression utilisé. Il peut s'agir de " 0 - " 9, " 0 indiquant la compression la plus faible et " 9 indiquant la compression la plus forte. La valeur par défaut est 6. L'augmentation du niveau de compression augmente le temps de traitement.

Retours

La fonction renvoie la valeur comprimée.

Exemple

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