MySQLで複合インデックスを作成する方法
MySQLではCREATE INDEX文を使用して複合インデックスを作成できます。
結合インデックスの作成構文は以下のとおりです。
CREATE INDEX index_name ON table_name (column1, column2, ...);
結合インデクスを作成する場合、index_name はインデクスの名前、table_name はインデクスを作成するテーブルの名前、column1、column2、… は結合インデクスに含める列の名前です。
例えば、「users」テーブルに「first_name」と「last_name」の2列を含む複合インデックスを作成するには、次のステートメントを使用できます。
CREATE INDEX idx_name ON users (first_name, last_name);
複合インデックスを作成する際は、列の順番がパフォーマンス上非常に重要です。クエリ頻度が高い列を複合インデックスの先頭に配置することで、クエリのパフォーマンスを向上させることができます。
ALTER TABLE文を使用してインデックスの追加/削除を行うこともできます。
インデックスを追加する構文は次のとおりです。
ALTER TABLE table_name ADD INDEX index_name (column1, column2, ...);
インデックス削除の構文は次のとおりです。
ALTER TABLE table_name DROP INDEX index_name;
なお、table_name は対象テーブル名、index_nameは追加・削除するインデックス名です。