ここではOracleの索引(インデックス)の情報を確認するSQL文について紹介します。
目次
索引の一覧を取得する
ユーザーがアクセスできる索引を取得する
現行のユーザーがアクセスできる索引を取得するには、「ALL_INDEXES」を参照します。
SELECT * FROM ALL_INDEXES ORDER BY OWNER, INDEX_NAME;
ALL_INDEXESで取得できる主な情報は以下の通りです。
| 列名 | 説明 | 
|---|---|
| OWNER | 索引の所有者 | 
| INDEX_NAME | 索引の名前 | 
| INDEX_TYPE | 索引のタイプ | 
| TABLE_OWNER | 索引付きオブジェクトの所有者 | 
| TABLE_NAME | 索引付きオブジェクトの名前 | 
| TABLE_TYPE | 索引付きオブジェクトの型 | 
| UNIQUENESS | 索引が一意か(UNIQUE)一意でないか(NONUNIQUE) | 
| TABLESPACE_NAME | 索引が設定されている表領域の名前 | 
データベース内の索引を取得する
データベース内の索引を取得するには、「DBA_INDEXES」を参照します。
SELECT * FROM DBA_INDEXES ORDER BY OWNER, INDEX_NAME;
DBA_INDEXESで取得できる情報は、ALL_INDEXESと同じです。
ユーザーが所有する索引を取得する
現行のユーザーが所有する索引を取得するには、「USER_INDEXES」を参照します。
SELECT * FROM USER_INDEXES ORDER BY INDEX_NAME;
USER_INDEXESで取得できる情報はORDER列を除き、ALL_INDEXESと同じです。
以上、Oracleの索引(インデックス)の情報を確認するSQL文について解説しました。