
Oracle初心者です。
以下のような2種類のSQLをSQLPLUSで実行し、
実行計画を取得しました。
end_timeでfilterをかける際に、"TABLE ACCESS FULL"となっており、貼っているインデックスが使われていないことがわかりました。
#これがSQLの遅い主要因と考えています。。。。勘です。
インデックスが活用されていない原因としてはどのようなものが考えられるのでしょうか。
宜しくお願いいたします。
1)
set autotrace traceonly
select * from t_sample
where end_time >= '2009-08-25'
and end_time <= '2009-11-26'
2)
set autotrace traceonly
select * from t_sample
where end_time >= to_date('2009-08-25', 'yyyy-mm-dd')
and end_time <= to_date('2009-11-26', 'yyyy-mm-dd')
No.2ベストアンサー
- 回答日時:
テーブルの中身を知らないので何ともいえませんが
インデックスの基礎知識として選択の結果が15%以下でないと
使用する意味がないとされています。
ということで単純にSQLを実行した結果の選択行数がおおいから
フルスキャンの方が早いと判断されただけではないでしょうかね?
is nullで索引が効かなくなるといわれているのもこれと同じ理由です。
遅いというのならば索引の付け方が間違えているとかかなぁ?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
キャッシュを使わずにSELECTを...
-
Oracleで検索すると、フリーズ...
-
実行計画HASH JOIN RIGHT OUTER
-
Statement ignored というエラー
-
Access VBAで行ラベルが定義さ...
-
Accessのマクロでモジュールを...
-
Accessの数値から時間に変換す...
-
sqlplusでヘッダーが付かない
-
PL/SQLでSPOOLさせたいのですが...
-
SQL*Plusの終了はquit?exit?
-
14桁の日付(YYYYMMDDHHMMSS)を...
-
PL/SQLカーソルの2重FORループ...
-
sqlplusのspoolで空白行出現
-
ストアドプロシジャからストア...
-
OutlookVBAで作成したマクロに...
-
ALTER SESSIONについて
-
SQL文のエラー
-
callで順に実行されるプロシー...
-
ACCESS2007インポート時の空白...
-
【Excel VBA】 WorksheetやRa...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
キャッシュを使わずにSELECTを...
-
WHERE句の実行順序
-
likeとsubstrの使いわけについて
-
あいまい検索のパフォーマンス...
-
Oracleで検索すると、フリーズ...
-
ヒント句が無効になります
-
アナライズでほとんどの処理が...
-
実行計画HASH JOIN RIGHT OUTER
-
WHERE句はJOIN結合前結合後どち...
-
Like文の速度について教えてく...
-
統計情報取得
-
Oracleでデータ取得処理を高速...
-
外部結合と等価結合のパフォー...
-
Analyzeとは?
-
OEMで負荷の少ないSQLの実行計...
-
問題解決のストーリーにて PDCA...
-
oracleのanalyzeと処理時間につ...
-
処理速度の改善について
-
800万件のテーブル読み込み...
-
【チューニング】インデックス...
おすすめ情報