ここではOracleのインデックスの作成・再構築・削除について紹介します。

インデックスを作成する

CREATE INDEX 文

インデックスの作成は、CREATE INDEX文を使用します。

構文

CREATE [UNIQUE | BITMAP] INDEX {インデックス名}
   ON {テーブル名}({列名},...)


オプション説明
UNIQUE値が重複しない索引を作成する。
BITMAPビットマップ索引を作成する。
BITMAP句を指定しない場合は、Bツリー索引を作成する。


以下はテーブル「emp」にインデックス「emp_idx1」を作成するCREATE INDEX文です。

CREATE UNIQUE INDEX emp_idx1
    ON emp(emp_name, emp_birthday);


インデックスを再構築する

ALTER INDEX 文

インデックスを再構築するには、ALTER INDEX文を使用します。

構文

ALTER INDEX {インデックス名} REBUILD [ONLINE];

※オンライン中に再構築できる「REBUILD ONLINE」を指定する場合は、Enterpriseライセンスが必要です。

以下はインデックス「emp_idx1」を再構築するALTER INDEX文です。

ALTER INDEX emp_idx1 REBUILD;


インデックスを削除する

DROP INDEX 文

インデックスを再構築するには、DROP INDEX文を使用します。

構文

DROP INDEX {インデックス名};

以下はインデックス「emp_idx1」を削除するDROP INDEX文です。

DROP INDEX emp_idx1;


以上、Oracleのインデックスの作成・再構築・削除について解説しました。