HOWTO · MySQL
MySQL ドロップ インデックス
今日の投稿では、MySQL でインデックスを削除するための多くの方法を見ていきます。
今日の投稿では、MySQL でインデックスを削除する方法について説明します。
MySQL のドロップ インデックス
頻繁にクエリされる列にインデックスを付けると、SELECT クエリが高速化されます。これは、インデックスによって MySQL がテーブル全体の検索をスキップできるためです。 インデックスを削除することも有益な場合があります。
MySQL は、レコードが修正されるたびに、変更された列を含むすべてのインデックスを更新する必要があります。 特定のインデックスを頻繁に使用しない場合、テーブルのインデックスが過剰に作成されている可能性があります。インデックスを削除すると、テーブルの更新の効率が向上します。
前の概念をさらに理解するには、次の構文を検討してください。
DROP INDEX index_name ON table_name;
DROP INDEX `PRIMARY` ON table_name;
ALTER TABLE table_name DROP `PRIMARY` KEY;
ALTER TABLE table_name DROP INDEX index_name;
ALTER TABLE table_name DROP INDEX index_name_1, DROP INDEX index_name_2;
ここで、index_name は削除するインデックスの名前で、table_name はインデックスを削除するテーブルの名前です。
主キーの削除は、インデックスの名前を知る必要がないため、最も簡単です。 MySQL では、主キーは常に PRIMARY と呼ばれます。
ただし、PRIMARY は予約語であるため、DROP INDEX コマンドで使用する場合は、後ろにバッククォートを付ける必要があります。
PRIMARY キーではないインデックスを削除する場合は、index_name を指定する必要があります。 名前がわからない場合は、SHOW INDEX を使用します。
最後のフレーズは、操作をコンマで区切ると、単一の ALTER TABLE クエリで多数のドロップ アクションを実行できることを示しています。
DROP INDEX email ON Employees;
ALTER TABLE Employees DROP INDEX email;
上記の例では、Employees テーブルの email インデックスを削除しています。 これにより、インデックスが破棄されます。 電子メール列とデータはそのまま残ります。
上記のコード行を、MySQL と互換性のあるブラウザーで実行します。 次の結果が表示されます。
出力:
successfully dropped index