データのクエリ(選択)に問題があります。Oracle 11g:同じテーブルの異なるクエリパフォーマンスで、一部のデータでインデックスが破損したようです
未収入金テーブルには、account_idがインデックスされています。 次のスクリプトを実行すると、Account_ID = 2003975183は正常ですが、Account_ID = 900025281の場合、プロセスはゆっくりです.Oracleサーバーが予期せず停止した後に発生します。 両方のアカウントの行数はほぼ同じです。
アカウント用のSQLスクリプト:
SELECT nvl(sum(invoice_amt),0) inv_amt
FROM ardb.receivables
WHERE
acct_id = 2003975183
AND entry_date >= trunc(SYSDATE)
AND entry_date < trunc(SYSDATE) + 1;
そのインデックスが正常に動作していないようにそれはそうトレースデータをよると、それを何ですか?添付の高速ANSスロークエリの
両方のトレース:
は親切にチェックし、問題を解決するのに役立ちます。 ありがとう!
:このスクリプトの実行後、細かいトレースで働く共有プールのサイズの問い合わせを増やす(それがなかったの前に)私は、インデックス・スキャンを見ることができます もう一度あなたのクエリを参照してください。 – XING
私は覚えていません:1)テーブルのデータを分割し、2)統計情報を収集しました。無効。ちなみに、統計情報収集の前に統計情報とパーティションの行数は同じでした。 – Ikrom