クエリのリストを分析して、特定のテーブル/フィールドに対するレポートの依存関係を調べ、データ構造のリファクタリングの影響を文書化しようとしています。
クエリ文字列の入力に基づいて、どのテーブル/フィールドが使用されているかを調べる方法はありますか (SQL Server クエリ パーサーを使用することもできます)。
クエリのリストを分析して、特定のテーブル/フィールドに対するレポートの依存関係を調べ、データ構造のリファクタリングの影響を文書化しようとしています。
クエリ文字列の入力に基づいて、どのテーブル/フィールドが使用されているかを調べる方法はありますか (SQL Server クエリ パーサーを使用することもできます)。
クエリを発行SET SHOWPLAN_XML ON
して実行できます (別のバッチで)。
XML
これにより、予想される実行計画が返されます。
、、および//ColumnReference
を含むものを検索できます。@Database
@Schema
@Table
@Column
ただし、オプティマイザーは、ビューを拡張する (使用している場合)、一部のテーブルを最適化する (必要ないと判断した場合) などを決定する可能性があることに注意してください。ただし、これはリファクタリングにも役立つ場合があります。
また、出力を実行SET STATISTICS IO ON
して読み取ることもできます。エンジンが使用するテーブルの実際の I/O が表示されます。
クエリの実行計画を確認し、その出力を後処理して、探しているものに近づけることができます。
http://msdn.microsoft.com/en-us/library/ms187735(v=sql.105).aspx
SHOWPLAN_ALL T-SQL コマンドの開始点です。