ホームページ >バックエンド開発 >PHPチュートリアル >クエリ アナライザーを使用した SQL Server スクリプトのチューニング_PHP チュートリアル
私は、SQL Server にバンドルされているツールを逆ピラミッドとして考えるのが好きです。一般的な問題を診断およびチェックするためのツールが上部にあり、問題の特定の領域を検出および診断するためのツールが下部にあります。クエリ アナライザーは、SQL スクリプトを作成する便利な方法を提供するだけでなく、特定の SQL スクリプトで特定の問題を解決する必要がある場合に使用する必要があるリソースです。また、どのクエリが特定のテーブルのロックを保持しているかを把握する必要がある場合は、クエリ アナライザを使用することもできます。
クエリ アナライザーの重要な診断機能は、クエリの実行計画を表示する機能です。この実行プランは、クエリの実行中にインデックスをいつどのように使用するか、または使用しないかなど、さまざまな種類の有用な情報を提供します。また、並べ替え、並列処理、入れ子になったループ、指定されたクエリを実行するために SQL サーバーが実行する必要があるその他の事項など、他の多くの詳細も提供します。
プランの利点
クエリ アナライザーを使用すると、クエリ自体を実行せずに予測されたプランを表示したり、クエリの実行後に実際のプランを表示したりできます。明らかに、実際の計画はデータベースに対して物理的にクエリを実行するため、より正確になります。ただし、システム負荷が高いクエリや長期間にわたるクエリの場合、このアプローチは最良の選択ではない可能性があります。通常、特定のクエリに問題があると思われる場合、またはアプリケーションでクエリが頻繁に呼び出され、パフォーマンスの問題が発生する可能性があると予想される場合に、これを実行します。
クエリ アナライザーに SQL 式を入力し、[Ctrl]L を押すと、予想される実行プランを表示できます。実行計画は、[結果] パネル タブに表示されます。実行計画は英語のように左から右に読むのではなく、右から左に読むので、最初は読みにくいかもしれません。
実行計画
これは、従うことができる例です。この例から、クエリ アナライザーを使用して実行計画を表示する方法を確認できます。 Northwind データベースから従業員の場所と関連する地域を返す次のクエリについて考えます。 .territoryid = t.territoryid
JOIN Regional r ON t.regionid = r.regionid
WHERE
e.employeeid = 1
ORDER BY
TerritoryDescription, RegionalDescription
このクエリの結果は次のようになります: EmployeeId No. 1 は東部にあります図 A に示すように、(東部) には 2 つのリージョンがあります。
図A
クエリ結果
http://www.bkjia.com/PHPjc/631128.html
www.bkjia.com