Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
压缩字符串,并返回 LONG BINARY 类型的值。
COMPRESS( string-expression [ , 'compression-algorithm-alias' ])
string-expression 要压缩的字符串。也可以将二进制值传递给此函数。此参数区分大小写,即使是在不区分大小写的数据库中也是如此。
compression-algorithm-alias 用于压缩的算法的别名。支持的值为 zip 和 gzip(两者均基于相同的算法,但使用不同的标头和报尾)。
Zip 是一种受到广泛支持的压缩算法。Gzip 与 Unix 上的 gzip 实用程序兼容,而 zip 算法则与相应的实用程序不兼容。
必须以相同算法执行解压缩。
LONG BINARY
COMPRESS 返回的值不是人工可读的。如果返回值比原始串长,则其最大增加尺寸将不会超过原始串长度 + 12 字节长度的 0.1%。可以使用 DECOMPRESS 函数来解压缩经过压缩的 string-expression。
如果您在表中存储压缩后的值,则列类型应设为 BINARY 或 LONG BINARY 以避免对该数据执行字符集转换操作。
SQL/2008 服务商扩充。
以下示例返回通过使用 gzip 算法压缩字符串 'Hello World' 而创建的二进制字符串的长度。想要确定某个值压缩后的长度是否变短时,此示例会很有用。
SELECT LENGTH( COMPRESS( 'Hello world', 'gzip' ) );