ホームページ > データベース > mysql チュートリアル > PostgreSQL でインデックス付き列情報を取得するにはどうすればよいですか?

PostgreSQL でインデックス付き列情報を取得するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-30 00:18:14
オリジナル
805 人が閲覧しました

How to Retrieve Indexed Column Information in PostgreSQL?

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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート