インデックスの作成

インデックスの作成方法を確認します。基本となる構文は下記の通りです。

CREATE INDEX インデックス名 ON テーブル名(カラム名1, カラム名2, ...);

対象となるテーブルのカラム名を指定してインデックスを作成します。複数のカラムを対象としたインデックスを作成する場合は、カラム名を指定する箇所でカンマ(,)で区切り続けて記述して下さい。

具体的には次のようになります。

create index nameindex on bookstable(name);
create index namecateindex on bookstable(name, category);

最初のCREATE文では「bookstable」テーブルに含まれる「name」カラムを対象とした「nameindex」インデックスを作成します。2番目のCREATE文では「name」カラムと「category」カラムの2つのカラムに対する「namecateindex」インデックスを作成します。

サンプル

では実際にインデックスを作成してみます。

次のようなテーブルを対象にします。

p2-1

「name」カラムを対象としたインデックスを作成します。

create index nameindex on goods(name);

p2-2

インデックスが作成されました。

作成済みインデックスの確認

作成されたインデックスはSQLiteコマンドの「.indices」で確認できます。書式は次の通りです。

.indices TABLE

引数にテーブル名を指定して下さい。指定されたテーブルを対象としたインデックスの一覧を表示します。

では実際に試してみます。

.indices goods;

p2-3

作成済みのインデックスが表示されました。