技術メモ

メモ代わりに使います!

SQL-改善方法


①SELECT文で*を使わない

②WHERE句の左側で算術演算や関数を指定しない
⇒例えインデックスが定義されているカラムでもテーブル全体を走査してしまい、
インデックスが効かなくなる

③テーブルの別名を利用する
⇒テーブルに別名を付けてフィールド名にはその別名をつけると、
SQL文の解析処理を減らすことができる

④GROUP BY, ORDER BY, HAVINGの使用は控える
⇒余分なディスク入出力が発生したりディスク領域を使うので、
自分もしくは他のプログラムに悪影響を及ぼす。
使わずに済むなら使わないほうが良い。

⑤DISTINCTの代わりにEXISTSを使う

⑥IS NULL, IS NOT NULLを単独で使わない
⇒インデックスを定義したフィールドであっても全表走査となる

⑦後方一致検索はなるべく避ける
⇒インデックスを定義したフィールドであっても全表走査となる