pg_amop
#目錄 pg_amop
儲存關於與存取方法運算子族相關聯的運算子的資訊。每個作為運算子族成員的運算子都有一列。族成員可以是搜尋運算子或排序運算子。一個運算子可以出現在多個族中,但不能在一個族中出現多個搜尋位置或多個排序位置。(允許,但不太可能,一個運算子同時用於搜尋和排序目的。)
表 51.4. pg_amop
欄位
欄位 描述 |
---|
列識別碼 |
此條目所屬的運算子族 |
運算子的左側輸入資料類型 |
運算子的右側輸入資料類型 |
運算子策略編號 |
運算子目的, |
運算子的 OID |
索引存取方法運算子族適用 |
此條目依據排序的 B-tree 運算子族,如果是一個排序運算子;如果是搜尋運算子,則為零 |
“搜尋”運算子條目表示可以搜尋此運算子族的索引,以找到滿足 WHERE
indexed_column
operator
constant
的所有列。顯然,這樣的運算子必須傳回 boolean
,且其左側輸入類型必須符合索引的欄位資料類型。
“排序”運算子條目表示可以掃描此運算子族的索引,以傳回以 ORDER BY
indexed_column
operator
constant
表示的順序列。這樣的運算子可以傳回任何可排序的資料類型,儘管其左側輸入類型必須再次符合索引的欄位資料類型。 ORDER BY
的確切語意由 amopsortfamily
欄位指定,該欄位必須參照運算子結果類型的 B-tree 運算子族。
目前,假定排序運算子的排序順序是所參照的運算子族的預設順序,即 ASC NULLS LAST
。有一天,可能會透過新增額外的欄位來明確指定排序選項,從而放寬此限制。
條目的 amopmethod
必須符合其包含的運算子族的 opfmethod
(在此包含 amopmethod
是為了效能原因而有意為之的目錄結構非正規化)。此外, amoplefttype
和 amoprighttype
必須符合所參照的 pg_operator
條目的 oprleft
和 oprright
欄位。
如果您在文件中發現任何不正確、與您使用特定功能的經驗不符或需要進一步澄清的地方,請使用此表單回報文件問題。