二进制字符串函数和运算符
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