• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:性能の改善について)

性能の改善方法とは

このQ&Aのポイント
  • 以下の(1)のSQLと(2)のSQLで性能が全然違います。原因は明示的に「1」を取得するようにしているからなのですが、改善する方法はないでしょうか?
  • (1)SQL(遅い) SELECT 1, /*+ INDEX(T_UKERUI T_UKERUIP1) */ T.NO_UKE FROM T_UKE T ,M_OFF O ,M_KAI K WHERE T.CD_OFR = O.CD_OFR AND T.CD_KAIIN = K.CD_KAIIN AND T.CD_STS IN (3, 4) AND T.CD_SHIP = 0001 AND T.NO_ADDNO = 0
  • (1)SQL(速い) SELECT /*+ INDEX(T_UKERUI T_UKERUIP1) */ T.NO_UKE FROM T_UKE T ,M_OFF O ,M_KAI K WHERE T.CD_OFR = O.CD_OFR AND T.CD_KAIIN = K.CD_KAIIN AND T.CD_STS IN (3, 4) AND T.CD_SHIP = 0001 AND T.NO_ADDNO = 0

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

こんにちは。 せっかくINDEXを指定しているのに、意味が無くなってますね・・・。 (TABLE ACCESS FULL です・・・) SELECT /*+ INDEX(T_UKERUI T_UKERUIP1) */ 1, T.NO_UKE ではないですか? (^^ゞ

toshi_200578
質問者

補足

回答ありがとうございます。 「1」にもインデックスを指定しておけばよいのですね。1つ質問ですが、ひょっとして SELECT /*+ INDEX(T_UKERUI T_UKERUIP1) */ 1,     /*+ INDEX(T_UKERUI T_UKERUIP1) */ T.NO_UKE ってやらなくても1つだけでよいのですか? 今は全ての列にコメントを書いています..。

その他の回答 (1)

回答No.2

こんにちは。 >>今は全ての列にコメントを書いています..。 ??? 1回でいいですよ。 (^^ゞ

toshi_200578
質問者

お礼

あちゃ。やっぱりそうですか。。 すいません単純なことで。。 ありがとうございましたm(_ _)m

関連するQ&A