159
150

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

MySQLでインデックスを追加するSQLと削除するSQLを実行しました

Last updated at Posted at 2015-02-19

MySQLで特定のカラムにindexを追加した状態を確認したい機会があり、SQLを使用してindexを追加しました。

indexを追加

ALTER TABLE と ADD INDEX でindexを追加することができます。

indexを追加する基本
ALTER TABLE テーブル名 ADD INDEX インデックス名(カラム名);

postsテーブルのupdated_atカラムにindexを貼る場合です。

indexを追加するSQL
ALTER TABLE posts ADD INDEX index_posts_on_updated_at(updated_at);

indexを削除

indexを削除する場合はDROP INDEXと書きます。

indexを削除する基本
ALTER TABLE テーブル名 DROP INDEX インデックス名;

postsテーブルからindex_posts_on_updated_atというインデックスを削除します。

indexを削除するSQL
ALTER TABLE posts DROP INDEX index_posts_on_updated_at;

複合indexを追加

複合indexを追加する場合は、カラム名をカンマ区切りで指定します。

複合indexを追加するSQL
ALTER TABLE posts ADD INDEX index_posts_on_created_at_updated_at(created_at, updated_at);

上記SQLでは created_atupdated_at のカラムで複合indexを貼りました。

おまけ

以下はindexを確認する場合の記事になります。
http://qiita.com/pugiemonn/items/2edf5d7967fb45dd5196

159
150
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
159
150

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?