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

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

百科 / 函数百科 / 18.7 变更

PostgreSQL 18.7 函数变更

相对 PostgreSQL 17.12 的差异:18.7 共有 675 个函数、871 条签名。

换一个对比基准

汇总

  1. 18新增函数
  2. 0移除函数
  3. 7签名变化
  4. 0换了分组

「签名变化」指函数还在,但它的签名有增有删;只改说明文字不计入。「换了分组」指手册把这个函数挪到了另一页。

新增函数18

  • gamma数学函数和操作符

    伽马函数

    gamma ( double precision ) → double precision

    1 条签名

  • lgamma数学函数和操作符

    伽马函数绝对值的自然对数

    lgamma ( double precision ) → double precision

    1 条签名

  • casefold字符串函数和操作符

    根据排序规则对输入字符串执行大小写折叠。大小写折叠与大小写转换类似,但其目的是方便字符串的不区分大小写匹配,而大小写转换的目的是将字符串转换为特定的大小写形式。此函数只能在服务器编码为 UTF8 时使用。

    casefold ( text ) → text

    1 条签名

  • crc32二进制串函数和操作符

    计算二进制字符串的 CRC-32 值。

    crc32 ( bytea ) → bigint

    1 条签名

  • crc32c二进制串函数和操作符

    计算二进制字符串的 CRC-32C 值。

    crc32c ( bytea ) → bigint

    1 条签名

  • uuidv4UUID 函数

    生成一个版本 4(随机)的 UUID

    uuidv4 ( ) → uuid

    1 条签名

  • uuidv7UUID 函数

    生成一个版本 7(按时间排序)的 UUID。其时间戳由 UNIX 时间戳(毫秒精度)加上亚毫秒时间戳和随机值计算得到。可选参数 shift 会按给定的 interval 偏移计算出的时间戳。不接受无穷 interval 值。偏移后的时间戳必须位于 UUID 版本 7 的 48 位毫秒时间戳字段所支持的范围内:从 1970-01-01 00:00:00 UTC 到大约 10889 年。如果结果时间戳超出此范围,则会引发错误。

    uuidv7 ( [shift interval] ) → uuid

    1 条签名

  • array_reverse数组函数和操作符

    反转数组的第一维。

    array_reverse ( anyarray ) → anyarray

    1 条签名

  • array_sort数组函数和操作符

    对数组的第一维进行排序。排序顺序由数组元素类型的默认排序顺序决定;不过,如果元素类型支持排序规则,也可以通过给 array 参数添加 COLLATE 子句来指定要使用的排序规则。

    array_sort ( array anyarray [, descending boolean [, nulls_first boolean ]] ) → anyarray

    1 条签名

  • has_largeobject_privilege系统信息函数和操作符

    用户是否拥有大对象的权限?可用的权限类型是 SELECT 和 UPDATE。

    has_largeobject_privilege ( [user name or oid, ] largeobject oid, privilege text ) → boolean

    1 条签名

  • pg_get_acl系统信息函数和操作符

    返回由系统目录 OID、对象 OID 和子对象 ID 指定的数据库对象的 ACL。对于未定义的对象,此函数返回 NULL 值。

    pg_get_acl ( classid oid, objid oid, objsubid integer ) → aclitem[]

    1 条签名

  • pg_get_loaded_modules系统信息函数和操作符

    返回当前服务器会话中已加载的可加载模块列表。除非模块作者使用 PG_MODULE_MAGIC_EXT 宏提供了这些值,否则 module_name 和 version 字段为 NULL。file_name 字段给出模块(共享库)的文件名。

    pg_get_loaded_modules () → setof record ( module_name text, version text, file_name text )

    1 条签名

  • pg_numa_available系统信息函数和操作符

    如果服务器在编译时启用了 NUMA 支持,则返回真。

    pg_numa_available () → boolean

    1 条签名

  • pg_clear_attribute_stats系统管理函数

    清除给定关系和属性的列级统计信息,就像该表是新创建的一样。

    pg_clear_attribute_stats ( schemaname text, relname text, attname text, inherited boolean ) → void

    1 条签名

  • pg_clear_relation_stats系统管理函数

    清除给定关系的表级统计信息,就像该表是新创建的一样。

    pg_clear_relation_stats ( schemaname text, relname text ) → void

    1 条签名

  • pg_ls_summariesdir系统管理函数

    返回服务器 WAL 摘要目录(pg_wal/summaries)中每个普通文件的名称、大小和最后修改时间(mtime)。排除名称以点开头的文件、目录及其他特殊文件。

    pg_ls_summariesdir () → setof record ( name text, size bigint, modification timestamp with time zone )

    1 条签名

  • pg_restore_attribute_stats系统管理函数

    创建或更新列级统计信息。通常这些统计信息会自动收集或作为 VACUUM 或 ANALYZE 的一部分更新,因此不必调用此函数。但它在恢复后很有用,可以在尚未运行 ANALYZE 时帮助优化器选择更好的计划。

    pg_restore_attribute_stats ( VARIADIC kwargs "any" ) → boolean

    1 条签名

  • pg_restore_relation_stats系统管理函数

    更新表级统计信息。通常这些统计信息会自动收集或作为 VACUUM 或 ANALYZE 的一部分更新,因此不必调用此函数。但它在恢复后很有用,可以在尚未运行 ANALYZE 时帮助优化器选择更好的计划。

    pg_restore_relation_stats ( VARIADIC kwargs "any" ) → boolean

    1 条签名

移除函数0

这一版没有移除函数。

签名变化7

函数 分组 增删 第一条新增签名
regexp_replace 字符串函数和操作符 +2−2 regexp_replace ( string text, pattern text, replacement text [, flags text] ) → text
reverse 字符串函数和操作符 +1 reverse ( bytea ) → bytea
gen_random_uuid UUID 函数 +1−1 gen_random_uuid ( ) → uuid
uuid_extract_timestamp UUID 函数 +1−1 uuid_extract_timestamp ( uuid ) → timestamp with time zone
uuid_extract_version UUID 函数 +1−1 uuid_extract_version ( uuid ) → smallint
json_strip_nulls JSON 函数和操作符 +1−1 json_strip_nulls ( target json [,strip_in_arrays boolean] ) → json
jsonb_strip_nulls JSON 函数和操作符 +1−1 jsonb_strip_nulls ( target jsonb [,strip_in_arrays boolean] ) → jsonb

换了分组0

这一版没有函数换分组。