Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Abfragen und Datenänderung » Abfragen » Fortgeschrittene Aufgaben: Abfrageausführungspläne

 

Anzeigen eines ausführlichen Textplans

Ein ausführlicher Textplan enthält mehr Informationen als der kurze Textplan, einschließlich des im Cache gespeicherten Plans für eine Anweisung, und stellt diese so dar, dass sie einfach gedruckt bzw. angezeigt werden können, ohne dass Sie blättern müssen.

Voraussetzungen

Sie müssen entweder Eigentümer der Objekte sein, für die die Funktion ausgeführt wird, oder die geeigneten SELECT-, UPDATE-, DELETE- oder INSERT-Privilegien für die Objekte haben.

 Aufgabe
  1. Stellen Sie eine Verbindung mit einer Datenbank her.

  2. Führen Sie die PLAN-Funktion aus.

Ergebnisse

Der ausführliche Textplan erscheint im Fensterausschnitt Ergebnisse in Interactive SQL.

Beispiel

In diesem Beispiel basiert der ausführliche Textplan auf der folgenden Anweisung:

SELECT PLAN ('SELECT GivenName, Surname, OrderDate, Region, Country
FROM GROUPO.Customers JOIN GROUPO.SalesOrders ON ( SalesOrders.CustomerID = Customers.ID )
WHERE CustomerID < 100 AND ( Region LIKE ''Eastern''
      OR Country LIKE ''Canada'' )
ORDER BY OrderDate');

Der ausführliche Textplan lautet wie folgt:



( Plan [ Total Cost Estimate: 6.46e-005, Costed Best Plans: 1, Costed Plans: 10, Optimization Time: 0.0011462, 
Estimated Cache Pages: 348 ] 
  ( WorkTable 
    ( Sort 
      ( NestedLoopsJoin
        ( IndexScan Customers CustomersKey[ Customers.ID < 100 : 0.0001% Index | Bounded ] )
        ( IndexScan SalesOrders FK_CustomerID_ID[ Customers.ID = SalesOrders.CustomerID : 0.79365% Statistics ]
          [  ( SalesOrders.CustomerID < 100 : 0.0001% Index | Bounded )  
          AND  ( ( ((Customers.Country LIKE 'Canada' : 100% Computed) 
          AND (Customers.Country = 'Canada' : 5% Guess)) 
          OR ((SalesOrders.Region LIKE 'Eastern' : 100% Computed) 
          AND (SalesOrders.Region = 'Eastern' : 5% Guess)) ) : 100% Guess )  ] )
      )
    )
  )
)

Das Wort "Plan" gibt den Start eine Abfrageblocks an. "Total Cost Estimate" ist die vom Optimierer geschätzte Zeit in Millisekunden für die Ausführung des Plans. "Costed Best Plans", "Costed Plans" und "Optimization Time" sind Statistiken des Optimierungsprozesses, während "Estimated Cache Pages" für die geschätzte aktuelle Cachegröße steht, die zum Verarbeiten der Anweisung verfügbar ist.

Der Plan gibt an, dass die Ergebnisse sortiert sind und dass ein Nested-Loops-Join benutzt wird. In der gleichen Zeile wie der Join-Operator befinden sich die Join-Bedingung und deren Selektivitätsschätzung (die für alle vom Join-Operator erzeugten Zeilen ausgewertet wird). Die IndexScan-Zeilen geben an, dass über die Indizes "CustomersKey" und "FK_CustomerId_ID" auf die Tabellen "Customers" und "SalesOrders" zugegriffen wird.


 Siehe auch