SQL CREATEINDEXステートメント
SQL CREATEINDEXステートメント
このCREATE INDEX
ステートメントは、テーブルにインデックスを作成するために使用されます。
インデックスは、他の方法よりも迅速にデータベースからデータを取得するために使用されます。ユーザーはインデックスを見ることができず、検索/クエリを高速化するために使用されます。
注:インデックスを使用してテーブルを更新する場合は、インデックスを使用せずにテーブルを更新するよりも時間がかかります(インデックスも更新する必要があるため)。したがって、頻繁に検索される列にのみインデックスを作成します。
CREATEINDEX構文
テーブルにインデックスを作成します。重複する値が許可されます:
CREATE INDEX index_name
ON table_name (column1, column2, ...);
CREATE UNIQUEINDEX構文
テーブルに一意のインデックスを作成します。重複する値は許可されていません:
CREATE UNIQUE INDEX index_name
ON table_name (column1, column2, ...);
注:インデックスを作成するための構文は、データベースによって異なります。したがって、データベースにインデックスを作成するための構文を確認してください。
CREATEINDEXの例
以下のSQLステートメントは、「Persons」テーブルの「LastName」列に「idx_lastname」という名前のインデックスを作成します。
CREATE INDEX idx_lastname
ON Persons (LastName);
列の組み合わせにインデックスを作成する場合は、括弧内に列名をコンマで区切ってリストできます。
CREATE INDEX idx_pname
ON Persons (LastName, FirstName);
DROPINDEXステートメント
このDROP INDEX
ステートメントは、テーブル内のインデックスを削除するために使用されます。
MS Access:
DROP INDEX index_name ON table_name;
SQLサーバー:
DROP INDEX table_name.index_name;
DB2 / Oracle:
DROP INDEX index_name;
MySQL:
ALTER TABLE table_name
DROP INDEX index_name;