在 PostgreSQL 中取得索引列資訊
在 MySQL 中,SHOW INDEXES 指令可用於擷取為特定索引表建立索引的欄位。但是,在 PostgreSQL 中,沒有與此指令直接等效的指令。
要在PostgreSQL 中獲取此信息,可以使用以下查詢:
SELECT t.relname AS table_name, i.relname AS index_name, a.attname AS column_name FROM pg_class t, pg_class i, pg_index ix, pg_attribute a WHERE t.oid = ix.indrelid AND i.oid = ix.indexrelid AND a.attrelid = t.oid AND a.attnum = ANY(ix.indkey) AND t.relkind = 'r' AND t.relname LIKE 'test%';
此查詢連接pg_class 表(其中包含有關表的信息)、pg_index 表(包含有關索引的信息)和pg_attribute 表(包含有關表格列的資訊)。然後,它會過濾結果以僅包含特定表的索引(在此範例中,名稱以“test”開頭的表)。
此查詢的輸出將是索引名稱和列的列表
總而言之,雖然MySQL 有專門的命令來檢索索引列信息,但PostgreSQL 需要涉及多個表連接的更複雜的查詢。儘管如此,提供的查詢可以有效地完成任務。
以上是如何在 PostgreSQL 中檢索索引列資訊?的詳細內容。更多資訊請關注PHP中文網其他相關文章!