Skip to main content

二进制字符串函数和运算符

bit_length

返回二进制字符串中的位数,即 octet_length 的 8 倍。

句法
bit_length ( bytea ) -> integer
示例
SELECT bit_length('😇'::bytea);
32

md5

返回二进制字符串的 MD5 哈希值(十六进制表示)。

句法
md5 ( bytea ) -> varchar
示例
SELECT md5('risingwave'::bytea);
7ad0245ddf6c26f4f6ae269a644ac00a

octet_length, length

返回二进制字符串中的字节数。

句法
octet_length ( bytea ) -> integer
-- 或者
length ( bytea ) -> integer
示例
SELECT octet_length('😇'::bytea);
4

sha1

返回二进制字符串的 SHA-1 哈希值。

句法
sha1 ( bytea ) -> bytea
示例
SELECT sha1('risingwave'::bytea);
\x48d3478f8350c86fa2e6f65a5883c2046523c8bb

sha224

返回二进制字符串的 SHA-224 哈希值。

句法
sha224 ( bytea ) -> bytea
示例
SELECT sha224('risingwave'::bytea);
\xb898defab7c2e2f41c9a494a22e3567274b48123625f96008439e0bb

sha256

返回二进制字符串的 SHA-256 哈希值。

句法
sha256 ( bytea ) -> bytea
示例
SELECT sha256('risingwave'::bytea);
\x73ab8557da7bd59f798600fb1d18d18967bc763638fc456f477799437f229e06

sha384

返回二进制字符串的 SHA-384 哈希值。

句法
sha384 ( bytea ) -> bytea
示例
SELECT sha384('risingwave'::bytea);
\x7f6f71a068f04e3ed6338e06fec75941b48a2dadff58dffc4c39211b1dcc4a5f000168d1be49fd7b7e44094e7a7e627e

sha512

返回二进制字符串的 SHA-512 哈希值。

句法
sha512 ( bytea ) -> bytea
示例
SELECT sha512('risingwave'::bytea);
\x3d6d6078c75ad459cdc689216d5de35bd6d9a9a50b9bed96417aaf7ad25057b37460564f0ad23a589c655eda45026096a6bab08b3c863f0425cbfea64b5f84a8

substr

从二进制字符串(bytea)中提取一个子字符串,从位置 start_int 开始,长度为 count_int 字节。如果省略 count_int,则子字符串会延伸到 bytea 值的末尾。

句法
substr ( bytea_value, start_int, [, count_int] ) -> bytea
示例
SELECT substr('abcde'::bytea, 2, 7);
\x62636465
示例
SELECT substr('abcde'::bytea, -2, 5);
\x6162