我正在学习PostgreSQL教程,作者刚才提到了PostgreSQL中有系统列,但是没有提到什么时候和为什么要使用它们。
另外,在PostgreSQL文档中,它只提到了系统列,但没有说明何时和为什么使用它们?
系统列在PostgreSQL中的用途是什么?
发布于 2016-10-01 01:54:32
系统列主要用于系统。这些列是可能在主要版本之间更改的实现细节(虽然对大多数版本来说是不太可能的)。您不会在when and why to use them
手册中找到很多,因为您不应该在标准操作中使用它们。手册上说:
您并不需要真正关心这些列,只要知道它们的存在就行了。
这就是说,有各种特殊的情况和角落的情况下,每一列都是有用的。请记住,SELECT *
从不包括系统列。如果要将它们显式地列出到SELECT
列表中,则必须将它们显式列出。
例如,在同一语句中没有主键的情况下,可以使用ctid
(元组ID)唯一地标识行(在同一语句中):
结合dba.SE或堆栈溢出中的每个系统列搜索Postgres,以查找其他各种用例。示例搜索。
除了要链接到的系统列的手册页面之外,至少还有一个相关的:
https://dba.stackexchange.com/questions/151170
复制相似问题