Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 参考 » 使用 SQL » SQL 函数 » SQL 函数 (A-D)

 

COMPRESS 函数 [String]

压缩字符串,并返回 LONG BINARY 类型的值。

语法
COMPRESS( string-expression [ , 'compression-algorithm-alias' ])
参数
  • string-expression   要压缩的字符串。也可以将二进制值传递给此函数。此参数区分大小写,即使是在不区分大小写的数据库中也是如此。

  • compression-algorithm-alias   用于压缩的算法的别名。支持的值为 zip 和 gzip(两者均基于相同的算法,但使用不同的标头和报尾)。

    Zip 是一种受到广泛支持的压缩算法。Gzip 与 Unix 上的 gzip 实用程序兼容,而 zip 算法则与相应的实用程序不兼容。

    必须以相同算法执行解压缩。

    有关详细信息,请参见DECOMPRESS 函数 [String]

返回值

LONG BINARY

注释

COMPRESS 返回的值不是人工可读的。如果返回值比原始串长,则其最大增加尺寸将不会超过原始串长度 + 12 字节长度的 0.1%。可以使用 DECOMPRESS 函数来解压缩经过压缩的 string-expression

如果您在表中存储压缩后的值,则列类型应设为 BINARY 或 LONG BINARY 以避免对该数据执行字符集转换操作。

另请参见
标准和兼容性
  • SQL/2003   服务商扩充。

示例

以下示例返回通过使用 gzip 算法压缩字符串 'Hello World' 而创建的二进制字符串的长度。想要确定某个值压缩后的长度是否变短时,此示例会很有用。

SELECT LENGTH( COMPRESS( 'Hello world', 'gzip' ) );