CREATE INDEX ステートメントは、テーブルにインデックスを作成するために使用されます。
インデックスを使用すると、データベース アプリケーションはテーブル全体を読み取ることなく、より迅速にデータを検索できるようになります。
テーブルにインデックスを作成して、データをより迅速かつ効率的にクエリできます。
インデックスはユーザーには表示されません。インデックスは検索/クエリを高速化するためにのみ使用されます。
注: インデックスのあるテーブルの更新は、インデックス自体も更新する必要があるため、インデックスのないテーブルの更新よりも時間がかかります。 したがって、理想的なアプローチは、頻繁に検索される列 (およびテーブル) にのみインデックスを作成することです。
テーブルに単純なインデックスを作成します。 重複する値は許可されます:
CREATE INDEX index_name ON table_name (column_name)
注:「column_name」は、インデックスを作成する列を指定します。
テーブルに一意のインデックスを作成します。 一意のインデックスは、2 つの行が同じインデックス値を持つことができないことを意味します。
CREATE UNIQUE INDEX index_name ON table_name (column_name)
この例では、Person テーブルの LastName 列に「Index_Pers」という単純なインデックスを作成します。
CREATE INDEX Index_Pers ON Person (LastName)
列内の値を降順でインデックス付けする場合は、列名の後に予約語 DESC を追加できます。
CREATE INDEX Index_Pers ON Person (LastName DESC)
複数の列のインデックスを作成する場合は、列名をかっこ内にカンマで区切ってリストできます。
CREATE INDEX Index_Pers ON Person (LastName, FirstName)