PostgreSQL で作成済みのインデックスで使用されている演算子クラスを知るにはどうすればよいですか?
質問する
854 次
1 に答える
3
システム カタログを照会できます。
複数列のインデックスには、複数の演算子クラスが存在する場合があります。
SELECT opcname
FROM (
SELECT unnest(indclass) AS ind_op
FROM pg_index
WHERE indexrelid = 'index_schema.index_name'::regclass
) i
JOIN pg_opclass o ON o.oid = i.ind_op;
indclass
oidvector
配列のようにネストを解除できる型です。このようにして、複数列のインデックスに対して複数の行を取得します。マニュアルのカタログ テーブルの詳細については、こことここを参照してください。
index_schema
が含まれている場合search_path
(インデックス名が重複している場合は最初に来る場合)、名前をスキーマ修飾する必要はありません。
于 2012-09-11T12:11:35.247 に答える