pg_collation_actual_version()
是一个系统函数,返回当前安装在操作系统中的排序规则对象的实际版本。
pg_collation_actual_version()
在 PostgreSQL 10 中添加。
用法
pg_collation_actual_version (oid
) →text
如果此函数返回的版本与 pg_collation
中 collversion
列中的值不同,则依赖于该排序规则的对象可能需要使用 ALTER COLLATION ... REFRESH VERSION
重新构建。
变更历史
- PostgreSQL 16
- 使用默认排序规则生效,而不是返回
NULL
(提交 10932ed5)
- 使用默认排序规则生效,而不是返回
- PostgreSQL 10
- 添加 (提交 eccfef81)
示例
pg_collation_actual_version()
的用法示例
postgres=# CREATE TABLE foo (id INT NOT NULL, val TEXT COLLATE "de_DE.utf8"); CREATE TABLE postgres=# SELECT pg_describe_object(refclassid, refobjid, refobjsubid) AS "Collation", pg_describe_object(classid, objid, objsubid) AS "Object", c.collversion,
pg_collation_actual_version(c.oid) FROM pg_depend d JOIN pg_collation c ON (refclassid = 'pg_collation'::regclass AND refobjid = c.oid) ORDER BY 1, 2; Collation | Object | collversion | pg_collation_actual_version ------------------------+-------------------------+-------------+----------------------------- collation "de_DE.utf8" | column val of table foo | 2.28 | 2.28
参考文献
- PostgreSQL 文档: 排序规则管理函数