pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
相对 PostgreSQL 18.7 的差异:19rc2 共有 685 个函数、896 条签名。
19rc2 为预发行快照,正式发布前仍可能变化。
「签名变化」指函数还在,但它的签名有增有删;只改说明文字不计入。「换了分组」指手册把这个函数挪到了另一页。
error_on_null比较函数和操作符
检查输入是否为 null 值;如果是,则生成错误;否则返回输入。
error_on_null ( anyelement ) → anyelement
tid_blockTID 函数
从元组标识符中提取块号。
tid_block ( tid ) → bigint
tid_offsetTID 函数
从元组标识符中提取块内的元组偏移量。
tid_offset ( tid ) → integer
pg_get_sequence_data序列操作函数
返回有关序列的信息。last_value 是最后一次写入磁盘的序列值。如果使用了缓存,这个值可能大于从序列中最后一次发出的值。is_called 表示该序列是否已经被使用过。page_lsn 是对应于最近一次修改此序列关系的 WAL 记录的 LSN。如果指定的关系 OID 不存在、该关系不是序列、当前用户没有序列上的 SELECT 权限、该序列是另一会话的临时序列,或者该序列是备库上的不记录 WAL 的序列,此函数将返回由 NULL 值组成的一行。
pg_get_sequence_data ( regclass ) → record ( last_value bigint, is_called bool, page_lsn pg_lsn )
multirange_minus_multi范围/多范围函数和操作符
返回从第一个多范围中减去第二个多范围后剩下的非空多范围。如果减法得到空多范围,则不会返回任何行。永远不会返回两行,因为单个多范围总能容纳任何结果。
multirange_minus_multi ( anymultirange, anymultirange ) → setof anymultirange
range_minus_multi范围/多范围函数和操作符
返回从第一个范围中减去第二个范围后剩下的非空范围。每个范围返回一行,因此如果第二个范围将第一个范围分成两部分,就会有两个结果。如果减法得到空范围,则不会返回任何行。
range_minus_multi ( anyrange, anyrange ) → setof anyrange
pg_get_multixact_stats系统信息函数和操作符
返回当前多事务使用情况的统计信息:num_mxids 是系统中当前存在的多事务 ID 总数,num_members 是系统中当前存在的多事务成员条目总数,members_size 是 pg_multixact/members 目录中 num_members 占用的存储空间,oldest_multixact 是仍在使用的最旧多事务 ID。
pg_get_multixact_stats () → record ( num_mxids bigint, num_members bigint, members_size bigint, oldest_multixact xid )
to_regdatabase系统信息函数和操作符
将文本数据库名转换为它的 OID。通过将字符串类型转换为 regdatabase 可以得到类似的结果(参见第 8.19 节);但是,如果没有找到名称,这个函数将返回 NULL 而不会抛出错误。
to_regdatabase ( text ) → regdatabase
pg_clear_extended_stats系统管理函数
清空扩展统计对象的数据,就像该对象是新建的一样。必需的参数包括 schemaname 和 relname,用于指定要清空其统计信息的关系的模式和表名,以及 statistics_schemaname 和 statistics_name,用于指定要清空的扩展统计对象的模式和扩展统计名称。
pg_clear_extended_stats ( schemaname name, relname name, statistics_schemaname name, statistics_name name, inherited boolean ) → void
pg_restore_extended_stats系统管理函数
创建或更新统计对象的统计信息。通常这些统计会自动收集,或者作为 VACUUM 或 ANALYZE 的一部分更新,因此通常不必调用此函数。不过,如果恢复后 ANALYZE 还没有运行,它可帮助优化器选择更好的计划。
pg_restore_extended_stats ( VARIADIC kwargs "any" ) → boolean
这一版没有移除函数。
| 函数 | 分组 | 增删 | 第一条新增签名 |
|---|---|---|---|
random |
数学函数和操作符 | +3 | random ( min date, max date ) → date |
regexp_count |
字符串函数和操作符 | +1 | regexp_count(string, pattern [, start [, flags]]) → integer |
regexp_instr |
字符串函数和操作符 | +1 | regexp_instr(string, pattern [, start [, N [, endoption [, flags [, subexpr]]]]]) → integer |
regexp_like |
字符串函数和操作符 | +1 | regexp_like(string, pattern [, flags]) → boolean |
regexp_match |
字符串函数和操作符 | +1 | regexp_match(string, pattern [, flags]) → text[] |
regexp_matches |
字符串函数和操作符 | +1 | regexp_matches(string, pattern [, flags]) → setof text[] |
regexp_replace |
字符串函数和操作符 | +2 | regexp_replace(string, pattern, replacement [, flags]) → text |
regexp_split_to_array |
字符串函数和操作符 | +1 | regexp_split_to_array(string, pattern [, flags]) → text[] |
regexp_split_to_table |
字符串函数和操作符 | +1 | regexp_split_to_table(string, pattern [, flags]) → setof text |
regexp_substr |
字符串函数和操作符 | +1 | regexp_substr(string, pattern [, start [, N [, flags [, subexpr]]]]) → text |
substring |
字符串函数和操作符 | +4−2 | substring(string SIMILAR pattern ESCAPE escape-character) |
extract |
时间/日期函数和操作符 | +2−2 | extract ( field FROM timestamp ) → numeric |
first_value |
窗口函数 | +1−1 | first_value ( value anyelement ) [ null treatment ] → anyelement |
lag |
窗口函数 | +1−1 | lag ( value anycompatible [, offset integer [, default anycompatible ]] ) [ null treatment ] → anycompatible |
last_value |
窗口函数 | +1−1 | last_value ( value anyelement ) [ null treatment ] → anyelement |
lead |
窗口函数 | +1−1 | lead ( value anycompatible [, offset integer [, default anycompatible ]] ) [ null treatment ] → anycompatible |
nth_value |
窗口函数 | +1−1 | nth_value ( value anyelement, n integer ) [ null treatment ] → anyelement |
pg_replication_origin_session_setup |
系统管理函数 | +1−1 | pg_replication_origin_session_setup ( node_name text [, pid integer DEFAULT 0] ) → void |
这一版没有函数换分组。