データ・ディクショナリ

DBA_INDEXESからインデックス一覧出力

DBA_INDEXES

DBA_INDEXESを参照する事でインデックス一覧を出力できますが、ユーザ自身で作成したインデックスに加え、システム自動で作成するインデックスも含まれるのでご注意ください。例えばCLOBカラムを作成した場合自動で対象カラムにインデックスを作成します。また、マテビューの高速リフレッシュの際必要となるマテリアライズドビュー・ログテーブルを作成した場合なども自動でインデックスが作成されます。

インデックス一覧出力SQL
select 
t.OWNER,t.INDEX_NAME,t.INDEX_TYPE
,t.UNIQUENESS,t.TABLESPACE_NAME
,t.TABLE_OWNER,t.TABLE_NAME
--,b.COLUMN_NAME
,t.LOGGING,s.BYTES/1024/1024 M_BYTE
from DBA_INDEXES t 
left join DBA_SEGMENTS s on t.OWNER = s.OWNER
and t.INDEX_NAME = s.SEGMENT_NAME  and s.SEGMENT_TYPE in ('INDEX','LOBINDEX')
--left join dba_lobs b on t.OWNER = b.OWNER and t.INDEX_NAME = b.INDEX_NAME
where t.TABLE_OWNER ='DABADA'
order by t.TABLE_OWNER,t.TABLE_NAME,t.OWNER,t.INDEX_TYPE,t.INDEX_NAME
;
インデックス一覧表示例

以下緑色はCLOBカラムを定義したため、青色はマテリアライズドビュー・ログテーブルを作成した事によりシステムで自動で作成したインデックスです。

                                                 UNIQU               TABLE                         LOGG
OWNER    INDEX_NAME                     INDEX_TY ENESS      TABLESPA OWNER    TABLE_NAME           ING      M_BYTE
-------- ------------------------------ -------- ---------- -------- -------- -------------------- ---- ----------
DABADA   SYS_IL0000114018C00004$$       LOB      UNIQUE     TBS02    DABADA   EX003                YES       .0625
DABADA   IDX01_EX003                    NORMAL   NONUNIQUE  TBS02    DABADA   EX003                NO        .0625
DABADA   PK_EX003                       NORMAL   UNIQUE     TBS02    DABADA   EX003                NO        .0625
DABADA   I_MLOG$_OY_PREFECTURE          NORMAL   NONUNIQUE  TBS02    DABADA   MLOG$_OY_PREFECTURE  NO        .0625
DABADA   I_MLOG$_OY_REGION              NORMAL   NONUNIQUE  TBS02    DABADA   MLOG$_OY_REGION      NO        .0625
DABADA   PK_OY_PREFECTURE               NORMAL   UNIQUE     TBS02    DABADA   OY_PREFECTURE        NO        .0625
DABADA   PK_REGION                      NORMAL   UNIQUE     TBS02    DABADA   OY_REGION            NO        .0625
DABADA   IDX01_PREFECTURE_MMV           NORMAL   NONUNIQUE  TBS02    DABADA   PREFECTURE_MMV       NO        .0625
DABADA   PTRENGEEX01_PK                 NORMAL   UNIQUE     TBS02    DABADA   PTRENGEEX01          NO           96
DABADA   SYS_IL0000113662C00005$$       LOB      UNIQUE     SYSTEM   DABADA   TABINF               YES
DABADA   IDX02_TBL26                    NORMAL   NONUNIQUE  TBS02    DABADA   TBL26                NO          128
DABADA   UNI_IDX01_TBL26                NORMAL   UNIQUE     TBS02    DABADA   TBL26                NO           19
DABADA   SYS_IL0000113683C00003$$       LOB      UNIQUE     TBS01    DABADA   TBL304               YES       .0625
DABADA   IDX01_TBL304                   NORMAL   NONUNIQUE  TBS02    DABADA   TBL304               NO        .0625

14行が選択されました。

SQL>
SQL*Plus表示用
set lin 200
set pages 100
COLUMN OWNER           FORMAT A8
COLUMN INDEX_NAME      FORMAT A30
COLUMN INDEX_TYPE      FORMAT A8
COLUMN UNIQUENESS      FORMAT A10
COLUMN UNIQUENESS      HEADING 'UNIQU|ENESS'
COLUMN TABLESPACE_NAME FORMAT A8
COLUMN TABLE_OWNER     FORMAT A8
COLUMN TABLE_OWNER     HEADING 'TABLE|OWNER'
COLUMN TABLE_NAME      FORMAT A20
COLUMN LOGGING         FORMAT A4
COLUMN LOGGING         HEADING 'LOGG|ING'
スポンサーリンク
タイトルとURLをコピーしました