ORACLE SQL リファレンス(逆引き)

ORACLE SQL リファレンス

Web oracle.se-free.com
SQLチューニング(1)
スポンサード リンク

● ANDよりBETWEENの使用を検討する
  BETWEENは、指定された範囲評価の操作が1回で済むのに対し、ANDは複数回の操作となるので、ANDよりBETWEENの使用を検討する
 ○ select * from emp where salary between 0 and 3000;

 × select * from emp where salary >= 0 and salary <= 3000;


● HAVINGよりWHEREの使用を検討する
  HAVINGは非常に重い処理なので、集計結果の判定以外は、HAVING句よりWHERE句の使用を検討する。
 × select dept_id, sum( salary ) from emp group by dept_id having dept_id = 'D02';

 ○ select dept_id, sum( salary ) from emp where dept_id = 'D02' group by dept_id;


スポンサード リンク

大文字/小文字/空白や改行の数を統一する
バインド変数を使用する
ワイルドカード「 * 」は使用しない
ANDよりBETWEENの使用を検討する
HAVINGよりWHEREの使用を検討する
UNIONよりUNION ALLの使用を検討する
テーブルに別名を付ける
ROWIDの使用を検討する
列番号は使用しない
DISTINCT句よりEXISTS句の使用を検討する
NOT IN句よりNOT EXISTS句の使用を検討する
INDEX列を使用しない検索(1)
INDEX列を使用しない検索(2)

SQLチューニングへ
忘れっぽいエンジニアのオラクルSQLリファレンス TOPへ