2016-10-17 5 views
-1

私はUNIONでSPのWHERE... IN句を使用して相対的なパフォーマンスを評価しようとしています。SQL Server Profilerで単一SPをプロファイルするにはどうすればよいですか?

私は実行時間を調べて、SET STATISTICS TIME ONを使用しようとしましたが、すべてが0msを常に取って戻ってきます。

SQL Server Profilerを使用しようとしています。 TSQL_SPsテンプレートを選択しましたが、SPを実行する前でもトレースがゴミでいっぱいです。特定のSPの関連データのみをキャプチャするように指示するにはどうすればよいですか?

+0

あなたはまだその声明の計画を立てましたか?それはすべての答えを持っているかもしれません。とにかく 'in'が' union'に最適化する可能性はありますが、実際の計画からしか知ることはできません。私はあらかじめ定義されたプロファイルを使用していないし、ホスト/ログイン/ユーザー資格情報、データベース名、またはアプリケーション名が入力されている場合は、常に自分のフィルターを設定します。それが役立つかどうかを見てください。そして私はあなたの質問がdownvoteに値するとは思わない! – ajeh

+0

@ajeh DB名のフィルターを設定すると、その提案がありがたいです。残念ながら、私はSPを評価するのに役立つものではありません。開始時刻と終了時刻は同じです。 – Legion

+0

1ミリ秒未満で実行されることを意味しますか?それは可能です。この時点で、私は 'in'と' union'を使ってコード化された独立した文を実行し、その計画を比較します。トレースはおそらくあなたの調査のための適切な手段ではありません。 – ajeh

答えて

2

SQLプロファイラでは、新しいトレースを作成するときにトレースプロパティを変更できます。トレースプロパティの[イベント選択]タブをクリックし、列フィルタに移動します。

次に、textDataで「好き」をクリックして、必要なSPからユニークな単語を追加し、トレースを実行します。この方法であなたのトレースはあなたのSPのデータを提供します。 必要に応じて列フィルタを使用して再生できます。

関連する問題