4D v16.3DESCRIBE QUERY EXECUTION |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
DESCRIBE QUERY EXECUTION
DESCRIBE QUERY EXECUTION
DESCRIBE QUERY EXECUTION コマンドはカレントプロセスにおいて、クエリの分析を有効にしたり無効にしたりします。このコマンドは、4DランゲージのQUERYコマンドのようなクエリの文脈でのみ機能します。 status 引数にTrueを設定してこのコマンドを呼び出すと、クエリ分析モードが有効になります。このモードでは、4Dエンジンはデータに対して行われるクエリごとに2つの情報を内部的に記録します:
記録される情報はクエリのタイプ (インデックス付き, シーケンシャル)、見つけたレコード数、実行するクエリ条件ごとに必要な時間を含みます。これらの情報はGet Last Query PlanとGet Last Query Pathコマンドで読みだすことができます。 通常、クエリプランの説明とクエリパスは同じです。しかしパフォーマンスを向上させるため、4Dはクエリ実行時に動的な最適化を行うことがあるため、これら2つが異なることもあります。例えば4Dエンジンがそのほうが早いと判断すれば、インデックス付きフィールドに対するクエリをシーケンシャルクエリに変更することがあります - これは特に検索対象のセレクションが少ないときに発生します。 以下の例題は、コマンドを使用して取得できる情報のタイプを示します: C_TEXT($vResultPlan;$vResultPath) このコードを実行後、$vResultPlan と $vResultPath には実行されたクエリの定義が含まれます。例: $vResultPlan : Description in XML Format 定数が Get last query path コマンドに渡されると、 $vResultPath にはXMLで表現された定義が返されます: $vResultPath : <QueryExecution> <steps description="And" time="0" recordsfounds="1227"> <steps description="[Merge] : ACTORS with CITIES" time="13" recordsfounds="1227"> <steps description="[Join] : ACTORS.Birth_City_ID =CITIES.City_ID" time="13" recordsfounds="1227"/> </steps> </steps> </QueryExecution>
参照
|
プロパティ
プロダクト: 4D 履歴
初出: 4D v11 SQL Release 1 ARTICLE USAGE
ランゲージリファレンス ( 4D v16) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||