[データベース] インデックス
インデックスのメリット
- SELECT(検索)が早くなる
- 外部キーを利用したリレーションが使えるようになる
インデックスのデメリット
- インデックスの分、余計に容量をくう
- インデックス更新のため、INSERT(挿入)、UPDATE(更新)、DELETE(削除)が遅くなる
インデックスを使うべき場合
- テーブル(表)のレコード数が多い
- INSERT(挿入)、UPDATE(更新)、DELETE(削除)が少なく、SELECT(検索)が多い
- カラムの値のパターンが多い
- カラムを条件設定(WHERE)でよく使う
- NULL値を使わない/NULL値の行が少ない
- データベースの容量を気にする必要がない
これらの逆のときは、インデックスをむしろ使わないほうがいいということになる。
参考サイト
http://www.dbonline.jp/sqlite/index/index1.html
http://itpro.nikkeibp.co.jp/article/COLUMN/20060111/227105/
http://www.atmarkit.co.jp/fdb/rensai/orasql07/orasql07_1.html