1 つの SSRS 2005 レポートを実行しようとしています。このレポートは、1 つのパラメーターを取ります。パラメータを使用せずに値を直接書き込むと、10 秒で実行されます。例えば。
Select * from table1 where id = 122
パラメータを使用すると、10〜15分のように長い時間がかかります
Select * from table1 where id = @id
なぜこのようなことが起こっているのかわかりません。
前もって感謝します。
1 つの SSRS 2005 レポートを実行しようとしています。このレポートは、1 つのパラメーターを取ります。パラメータを使用せずに値を直接書き込むと、10 秒で実行されます。例えば。
Select * from table1 where id = 122
パラメータを使用すると、10〜15分のように長い時間がかかります
Select * from table1 where id = @id
なぜこのようなことが起こっているのかわかりません。
前もって感謝します。
1) サブクエリを結合ロジックに置き換えてみてください。可能な限り最善を尽くします。サブクエリは、[この結果セット] が [結果セットの出力] を取得するマクロ ビューで考えているときに、問題の流れをスムーズにするため、より論理的に感じられることがよくあります。2) インデックスも付けられます。そして、そのintであるため、より高速になります。
尋ねられたように質問に答えるのは不可能です。物事がうまくいかない理由を判断するための情報を持っているのはあなただけです。
ただし、「SSRS のパフォーマンスの問題を調査するにはどうすればよいですか?」という質問に答えることができます。これまでに見つけた最良のツールの 1 つは、ReportServer カタログ データベースのExecutionLog2 ビューを使用することです。あなたの場合、注目すべき重要な列は次のとおりです。
これにより、さらに調査するための出発点が得られます。おそらく(あなたの説明から)問題は最初のビットにあると思います。適切なフォローアップ手順は、おそらく実行計画を使用して、SSRS によって実行されるクエリを分析することです。