二进制函数和运算符

二进制运算符

The || 运算符执行连接。

二进制函数

length(binary) -> bigint()

返回binary的字节长度。

concat(binary1, ..., binaryN) -> varbinary()

返回binary1binary2...binaryN的连接。此函数提供与 SQL 标准连接运算符 (||) 相同的功能。

substr(binary, start) -> varbinary()

binary的起始位置start返回剩余部分,以字节为单位。位置从1开始。负起始位置被解释为相对于字符串的末尾。

substr(binary, start, length) -> varbinary()

binary返回一个长度为length的子字符串,从起始位置start开始,以字节为单位。位置从1开始。负起始位置被解释为相对于字符串的末尾。

to_base64(binary) -> varchar()

binary编码为 base64 字符串表示形式。

from_base64(string) -> varbinary()

从 base64 编码的string解码二进制数据。

to_base64url(binary) -> varchar()

使用 URL 安全字母表将binary编码为 base64 字符串表示形式。

from_base64url(string) -> varbinary()

从 base64 编码的string解码二进制数据,使用 URL 安全字母表。

from_base32(string) -> varbinary()

从 base32 编码的string解码二进制数据。

to_base32(binary) -> varchar()

binary编码为 base32 字符串表示形式。

to_hex(binary) -> varchar()

binary编码为十六进制字符串表示形式。

from_hex(string) -> varbinary()

从十六进制编码的string解码二进制数据。

to_big_endian_64(bigint) -> varbinary()

以 64 位 2 的补码大端格式编码bigint

from_big_endian_64(binary) -> bigint()

从 64 位 2 的补码大端binary解码bigint值。

to_big_endian_32(integer) -> varbinary()

以 32 位 2 的补码大端格式编码integer

from_big_endian_32(binary) -> integer()

从 32 位 2 的补码大端 binary 中解码 integer 值。

to_ieee754_32(real) -> varbinary()

根据 IEEE 754 单精度浮点格式,将 real 编码为 32 位大端二进制。

from_ieee754_32(binary) -> real()

解码 IEEE 754 单精度浮点格式的 32 位大端 binary

to_ieee754_64(double) -> varbinary()

根据 IEEE 754 双精度浮点格式,将 double 编码为 64 位大端二进制。

from_ieee754_64(binary) -> double()

解码 IEEE 754 双精度浮点格式的 64 位大端 binary

lpad(binary, size, padbinary) -> varbinary()

使用 padbinarybinary 左填充至 size 字节。如果 size 小于 binary 的长度,则结果将被截断为 size 个字符。 size 必须是非负数, padbinary 必须是非空的。

rpad(binary, size, padbinary) -> varbinary()

使用 padbinarybinary 右填充至 size 字节。如果 size 小于 binary 的长度,则结果将被截断为 size 个字符。 size 必须是非负数, padbinary 必须是非空的。

crc32(binary) -> bigint()

计算 binary 的 CRC-32。对于通用哈希,使用 xxhash64(),因为它更快并且生成更好的哈希质量。

md5(binary) -> varbinary()

计算 binary 的 md5 哈希。

murmur3_x64_128(binary) -> varbinary()

计算 binary 的哈希,等效于 C++ MurmurHash3_x64_128 (Murmur3F) 的相同 binary

sha1(binary) -> varbinary()

计算 binary 的 sha1 哈希。

sha256(binary) -> varbinary()

计算 binary 的 sha256 哈希。

sha512(binary) -> varbinary()

计算 binary 的 sha512 哈希。

xxhash64(binary) -> varbinary()

计算 binary 的 xxhash64 哈希。

spooky_hash_v2_32(binary) -> varbinary()

计算 binary 的 32 位 SpookyHashV2 哈希。

spooky_hash_v2_64(binary) -> varbinary()

计算 binary 的 64 位 SpookyHashV2 哈希。

hmac_md5(binary, key) -> varbinary()

使用给定的 key 计算 binary 的 md5 HMAC。

hmac_sha1(binary, key) -> varbinary()

使用给定的 key 计算 binary 的 sha1 HMAC。

hmac_sha256(binary, key) -> varbinary()

使用给定的 key 计算 binary 的 sha256 HMAC。

hmac_sha512(binary, key) -> varbinary()

使用给定的 key 计算 binary 的 sha512 HMAC。

reverse(binary) -> varbinary()

返回字节顺序反转的 binary