データベースクエリの [Execution Plan] ウィンドウは、クエリの最も効率的な実行プランを決定するのに役立ちます問題の可能性があるクエリを検出したら、EXPLAIN PLAN ステートメントを実行すると、データベースが作成した実行プランを確認できます。クエリの実行プランは、クエリがインデックスの使用を最適化して効率的に実行しているかどうかを明らかにします。この情報は、実行速度が遅いクエリのトラブルシューティングに役立ちます。

データベースクエリの [Execution Plan] ウィンドウへのアクセス

データベースクエリの [Execution Plan] ウィンドウにアクセスするには、次の手順を実行します。

  1. クエリの実行プランを表示するには、データベースの名前をクリックします。
  2. [Queries] タブをクリックします。
  3. 確認する SELECT ステートメントをクリックし、[View Query Details] をクリックします。
  4. [Execution Plan] タブをクリックします。

データベースクエリの [Execution Plan] ウィンドウの機能

データベースクエリの [Execution Plan] ウィンドウでは、次のことができます。

  • [Explain] をクリックすると、クエリの実行プランが表示されます。
  • [Schema] をクリックして別のスキーマを選択し、そのスキーマに基づいて実行プランを説明します。データベースアカウント権限の範囲外のスキーマに属しているクエリの実行プランを表示する場合は、スキーマにアクセスできる別のデータベースアカウントのユーザ名とパスワードを入力できます。
  • 最適でないクエリを改善する場合は、クエリを変更して [Explain another query] ボックスに貼り付けることができます。変更したクエリの実行プランを生成し、変更されたクエリがより効率的であるかどうかを確認するには、[Explain] ボタンをクリックします。
  • ページの上部にあるクエリ名の横にある下矢印をクリックして、別のデータベースコレクタのクエリとクエリ実行プランを表示できます。リストからデータベースコレクタ名を選択するか、または検索バーでデータベースコレクタを検索することができます。更新アイコンをクリックすると、検索条件を満たすデータベースコレクタのみが表示されます。

SQL Server または Azure を使用している場合は、次のいずれかの方法で実行プランを表示できます。

  • キャッシュされた実行プランを選択し、[View Cached Plan] をクリックしてプランの詳細を表示します。
  • キャッシュされた実行プランをダブルクリックします。 

MySQL を使用している場合は、次のことも実行できます。

  • 別のスキーマのクエリを説明することを選択します。[Plan Details] で、右側のリストからスキーマ名を選択し、[Explain] をクリックします。
  • [Parsed SQL] 出力ボックスのテキストをコピーして、編集可能な [Explain another query] ボックスに貼り付けてから、編集したバージョンのクエリを説明します。

MSSQL を使用している場合は、次の手順を実行して、実行プランでコストのかかる操作(操作の実行に必要な CPU 使用率、I/O、メモリなどの作業量)とプランの警告(存在する場合)を表示できます。

  1. [Query Plan Handle(s)] で、キャッシュされた実行プランを選択します。
  2. [View Cached Plan.] をクリックします。
    次の詳細を表示できます。
    Top Plan Operations:
フィールド名説明
Operation

実行プラン内のオブジェクトスキャン(テーブルまたはインデックス)操作

Database

オブジェクトのデータベース名

Schema

データベース内のオブジェクトのスキーマ
Object Name操作でスキャンされるオブジェクト(テーブルまたはインデックス)の名前

Estimated I/O Cost

操作を実行するための入出力(I/O)の推定コスト
Estimated CPU Cost操作を実行するための推定 CPU コスト
Estimated number of rowsオブジェクトの推定行数

[Warnings]:この表には、型変換などの問題に関連する実行プランの警告が含まれます。この表は、クエリの実行中に発生する、パフォーマンスを低下させる可能性のあるアクティビティを把握するのに役立ちます。この表には、次のフィールドが含まれます。

  • [Issue]:警告の問題の説明。
  • [Expression]:問題に関連する実行プランで使用されるクエリ式。

Oracle データベースを使用している場合は、キャッシュされた実行プランの詳細を、最上位のプラン操作と参照されるオブジェクトとともに表示できます。詳細を表示するには、[View Cached Plan(s)] の下にあるキャッシュされた実行プランをダブルクリックします。次の詳細情報が表示されます。

Top Plan operations

フィールド名説明
Operationステップで実行された内部操作の名前(TABLE ACCESS など)
Options[Operation] 列に記載されている操作のバリエーション(FULL など)


Referenced Objects

フィールド名

説明

Tree Node実行プランで使用されたシーケンスのステップ番号
Operation

実行プラン内のオブジェクトスキャン操作(テーブルまたはインデックス)

Object Typeデータベースオブジェクトのタイプ(インデックスまたはテーブル)
Object Nameデータベースオブジェクトの名前

データベースクエリの [Execution Plan] ウィンドウでは、次の情報を確認できます。

  • Cached Execution Plan(s):データベースごとに異なる、キャッシュされた実行プランの詳細を特定します。SQL Server の場合、実行プランは図として表示されます。
  • Plan Details:実行プランの詳細。選択したクエリを処理するために従うステップバイステップの手順およびデータベースを示します。
  • Referenced Objects:実行プランによってアクセスされるデータベースオブジェクト。

 Query Execution Plan