↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

百科 / 函数百科 / 二进制串函数和操作符

FUNCTION二进制串函数和操作符

set_bit

设置二进制字符串中的编号为 n 的位为newvalue。

Sets n'th bit in binary string to newvalue.

二进制串函数和操作符 引入 9.0(基线) 现存至 20 devel 2 条签名 0 次签名变更

签名数
2 条
引入版本
9.0(基线)
状态
现存
签名变更
未变过
本版来源
本站译文

PostgreSQL 18 手册 · 9.5 二进制串函数和操作符 官方文档

版本轨迹

相对 PostgreSQL 17 无变化。

签名

PostgreSQL 18 里 set_bit 的 2 条签名,按上游手册顺序排列。参数名用斜体,类型用弱化色, 之后是返回类型。说明取自本站手册译文:标「沿用」的借用了另一版的译文,标「EN」的本站暂无译文、按英文原文显示。

  1. set_bit ( bytes bytea, n bigint, newvalue integer ) → bytea

    设置二进制字符串中的编号为 n 的位为newvalue。
    • set_bit('\x1234567890'::bytea, 30, 0)\x1234563890
  2. set_bit ( bits bit, n integer, newvalue integer ) → bit

    将位串中编号为n的位设置为newvalue;第一位(最左侧的位)编号为位 0。
    • set_bit(B'101010101010101010', 6, 0)101010001010101010

演化历史

相邻两个大版本之间的差异,新的在前。版本号链到该版的签名。

  1. PostgreSQL 13 ← 12 手册重排

    这一跳手册重排了函数表的写法,签名文本整体改写,只记函数的增删,不逐条比较签名。

签名矩阵

每条签名在给出了签名的 18 个版本里的存在情况;方格指向该版的签名。只在正文里提到此函数、没有给出签名的版本不列进来,上面的版本轨迹里仍然有它们。签名文本在 PostgreSQL 13 前后写法不同,跨越那一跳的同一条签名会显示成两行。

存在 不存在

签名 9.09.19.29.39.49.59.61011121314151617181920
set_bit ( string, offset, newvalue ) → bytea 存在 存在 存在 存在 存在 存在 存在 存在 存在 存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在
set_bit ( bytes bytea, n bigint, newvalue integer ) → bytea 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 存在 存在 存在 存在 存在 存在 存在 存在
set_bit ( bits bit, n integer, newvalue integer ) → bit 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 不存在 存在 存在 存在 存在 存在 存在 存在 存在

同组函数

函数 签名 主签名 版本变动 最近变更
BINARY STRING FUNCTIONS AND OPERATORS 二进制串函数和操作符 16 个 ↗
bit_count 2 bit_count ( bytes bytea ) → bigint —
返回二进制字符串中被置位的位数(也称为“popcount”)。 现存
convert基线 1 convert ( bytes bytea, src_encoding name, dest_encoding name ) → bytea —
将表示编码src_encoding的文本的二进制字符串转换为编码dest_encoding的二进制字符串(适用的转换请参阅第 23.3.4 节)。 现存
convert_from基线 1 convert_from ( bytes bytea, src_encoding name ) → text —
将表示编码src_encoding的文本的二进制字符串转换为数据库编码中的text。 现存
convert_to基线 1 convert_to ( string text, dest_encoding name ) → bytea —
将text字符串(数据库编码)转换为编码dest_encoding中编码的二进制字符串。 现存
crc32 1 crc32 ( bytea ) → bigint —
计算二进制字符串的 CRC-32 值。 现存
crc32c 1 crc32c ( bytea ) → bigint —
计算二进制字符串的 CRC-32C 值。 现存
decode基线 1 decode ( string text, format text ) → bytea —
从文本表示中解码二进制数据;支持的format值与encode相同。 现存
encode基线 1 encode ( bytes bytea, format text ) → text —
将二进制数据编码成文本表示;支持的format值为:base32hex, base64, base64url, escape, hex。 现存
get_bit基线 2 get_bit ( bytes bytea, n bigint ) → integer —
从二进制字符串中提取编号为 n 的位。 现存
get_byte基线 1 get_byte ( bytes bytea, n integer ) → integer —
从二进制字符串中提取编号为 n 的字节。 现存
set_bit基线 2 set_bit ( bytes bytea, n bigint, newvalue integer ) → bytea —
设置二进制字符串中的编号为 n 的位为newvalue。 现存
set_byte基线 1 set_byte ( bytes bytea, n integer, newvalue integer ) → bytea —
将二进制字符串中编号为 n 的字节设置为 newvalue。 现存
sha224 1 sha224 ( bytea ) → bytea —
计算二进制字符串的 SHA-224 hash。 现存
sha256 1 sha256 ( bytea ) → bytea —
计算二进制字符串的 SHA-256 hash。 现存
sha384 1 sha384 ( bytea ) → bytea —
计算二进制字符串的 SHA-384 hash。 现存
sha512 1 sha512 ( bytea ) → bytea —
计算二进制字符串的 SHA-512 hash。 现存