ここから本文です

oracle11gで下記の様な最新の日付を取得するSQLがあり、 処理時間が0.3秒位掛かる...

har********さん

2017/7/1019:29:56

oracle11gで下記の様な最新の日付を取得するSQLがあり、
処理時間が0.3秒位掛かるのですが、これは普通でしょうか?

SELECT MAX(YMD)
FROM TABLE_XX
WHERE 名前 = "あいうえお"
AND YMD >= '20170101'

閲覧数:
36
回答数:
3

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

nor********さん

2017/7/1103:42:26

> 処理時間が0.3秒位

なら、SQLPLUSで「SET AUTOTRACE TRACEONLY」で実行計画を確認できると思います(システム負荷がそんなにでもない)

http://www.doppo1.net/oracle/tuning/explain-plan.html

結果を補足してください。

出来れば
・全体のデータ件数
・INDEXの有無。特に(名前)、(YMD)、(名前、YMD)でINDEXがあるかどうかも。

この回答は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

プロフィール画像

カテゴリマスター

lag********さん

2017/7/1022:06:26

何をもって普通とするのか色んな要素に作用されます。

例えばハイエンドモデルのサーバーとストレージを使用して、さらに10GBのネットワークを利用しているOracle DBに対して0.3秒のレスポンスなのか、それともPCに毛が生えた程度のサーバー上に存在しているOracle DBが0.3秒で結果を返しているのかで、全く普通の意味が違います。
さらには200万件存在するデータの中での50万件返してくるのが0.3秒なのか、1,000件の中での数件が返ってくるだけなのかも文章からでは分かりません。

さらにデータ型によっても影響を受けます。

per********さん

2017/7/1021:37:50

テーブルのデータ量にもよるので何とも言えないですが、パフォーマンスを改善したければ、ますばYMDにindexを張っているかの確認をしたほうがいいですね。

それからDBMS_STATSです

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる