この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Query Performance Feedback (ベータ)

指定した SOQL クエリ、レポート、またはリストビューのパフォーマンスを実行することなく分析します。

要求で explain パラメーターを使用すると、Salesforce がクエリ、レポート、またはリストビューをどのように処理し、どのように最適化するかを詳細に説明する応答を取得できます。

Query Performance Feedback リソースは、API バージョン 30.0 以降で使用できます。

この機能はベータサービスです。ベータサービスはお客様独自の裁量で試行するものとします。ベータ機能の使用には、「Agreements and Terms」に記載されたベータサービス規約が適用されます。

メモ

構文

URI
/services/data/vXX.X/query?explain=query
形式
JSON、XML
HTTP のメソッド
GET
認証
Authorization: Bearer token
パラメーター
パラメーター 説明
explain

分析する SOQL クエリ、レポート、リストビュー。クエリを分析するには、要求にクエリ全体を指定します。レポートやリストビューを分析する場合は、レポートまたはリストビューの ID を指定します。

SOQL クエリ文字列が無効な場合、MALFORMED_QUERY 応答が返されます。レポートまたはリストビューの ID が無効な場合、INVALID_ID 応答が返されます。

レスポンスボディ
レスポンスボディには、クエリ、レポート、またはリストビューの実行に使用できる 1 つ以上のプランが含まれます。プランは、最も最適なものから順に並び替えられます。各プランには次の情報が含まれます。
名前 データ型 説明
cardinality number インデックス項目に基づいてクエリから返されると予測されるレコード数 (存在する場合)。
fields string[] leadingOperationType が Index の場合、その値がクエリに使用されるインデックス項目となります。それ以外の場合、値は null です。
leadingOperationType string クエリを最適化するために使用できる主な操作種別。次のいずれかの値が有効です。
  • Index — クエリオブジェクトに関するインデックスがクエリで使用されます。
  • Other — Salesforce の内部的な最適化がクエリで使用されます。
  • Sharing — ユーザーの共有ルールに基づいたインデックスがクエリで使用されます。現在のユーザーに表示されるレコードが制限される共有ルールの場合、そのルールでクエリを最適化することができます。
  • TableScan — クエリオブジェクトのすべてのレコードがクエリでスキャンされ、インデックスは使用されません。
notes feedback note[] 1 つ以上のフィードバックメモの配列。各メモに含まれる内容は、次のとおりです。
  • description — 最適化の一部に関する詳細な説明。この説明には、使用不可能な最適化についてと、その理由が含まれます。
  • fields — 最適化に使用される 1 つ以上の項目の配列。
  • tableEnumOrId — 最適化に使用される項目のテーブル名。
この応答項目は、API バージョン 33.0 以降で使用できます。
relativeCost number SOQL セレクティブクエリのしきい値と比較した、このクエリのコスト。1.0 を超える値は、クエリがセレクティブではないことを示します。セレクティブクエリについての詳細は、『Apex 開発者ガイド』「非常に大きい SOQL クエリの処理」を参照してください。
sobjectCardinality number 組織内にあるクエリオブジェクトの全レコードの概数。
sobjectType string クエリオブジェクトの名前 (Merchandise__c など)。

SOQL クエリ実行のリソース