2025年9月25日: PostgreSQL 18 釋出!
支援的版本: 當前 (18) / 17 / 16 / 15 / 14 / 13
開發版本: devel
不支援的版本: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3

52.20. pg_enum #

pg_enum 目錄包含顯示每個列舉型別的值和標籤的條目。給定列舉值的內部表示實際上是其在pg_enum中關聯行的OID。

表 52.20. pg_enum

列 型別

描述

oid oid

行識別符號

enumtypid oid (引用 pg_type.oid)

擁有此列舉值的 pg_type 條目的 OID

enumsortorder float4

此列舉值在其列舉型別中的排序位置

enumlabel name

此列舉值的文字標籤


pg_enum 行的 OID 遵循一個特殊規則:偶數 OID 保證與它們的列舉型別的排序順序相同。也就是說,如果兩個偶數 OID 屬於同一個列舉型別,則較小的 OID 必須具有較小的 enumsortorder 值。奇數 OID 值與排序順序無需有任何關係。此規則允許列舉比較例程在許多常見情況下避免目錄查詢。建立和更改列舉型別的例程會盡可能嘗試為列舉值分配偶數 OID。

建立列舉型別時,其成員被分配排序位置 1..n。但稍後新增的成員可能被賦予負值或小數的 enumsortorder。這些值的唯一要求是它們在每個列舉型別中都正確排序且唯一。

提交更正

如果您在文件中發現任何不正確、與您在使用特定功能時的經驗不符或需要進一步澄清的內容,請使用 此表格 報告文件問題。