2010-08-10 9 views

Antwort

12

Ich glaube, dass das Schlüsselwort EXPLAIN ein MySQL-Konzept ist - das entsprechende Microsoft SQL-Server-Konzept ist der Ausführungsplan.

Die einfachste Möglichkeit, einen Ausführungsplan zu erhalten, besteht darin, im SQL Server Management Studio den Menüpunkt "Aktuellen Ausführungsplan anzeigen" (im Abfrage-Menü) zu aktivieren. Alternativ können Sie mehr in tieferen Einblick auf die Ausführung lesen Sie hier Pläne:

Dieser Artikel geht in viel mehr Detail auf, welche Ausführungspläne sind, wie einen Ausführungsplan zu erhalten, und die verschiedenen Ausführungsplanformate.

+2

Für (viel) mehr Informationen über Ausführungspläne finden Sie hier: http://www.simple-talk.com/sql/performance/execution-plan-basics/. In einigen Versionen von SSMS wird der Menüpunkt 'Geschätzter Abfrageplan anzeigen' angezeigt. – Tobiasopdenbrouw

+0

Danke, jetzt gefunden. @tobia +1, @kragen +1. –

+0

Es ist auch in Oracle verfügbar: 'SET AUTOTRACE OFF - ON' und dann SQL-Stmt. Sie können den Plan mit 'SELECT PLAN_TABLE_OUTPUT FROM TABLE (DBMS_XPLAN.DISPLAY());' anzeigen – Markus

-3

Sie müssen den Ausführungsplan in SQl Server betrachten. Schlagen Sie den Ausdruck in Büchern online nach, wie man es benutzt.

Sie nicht so einfach zu lesen sind, könnten Sie etwas ressearch tun möchte, ist hier ein Google-Suchwort zum Einstieg:

Lesen Ausführungsplan SQL Server

5

The MySql EXPLAIN statement can be used either as a synonym for DESCRIBE or as a way to obtain information about how MySQL executes a SELECT statement.

Die nächstgelegene äquivalente Anweisung für SQL Server ist:

SET SHOWPLAN_ALL (Transact-SQL)
oder
SET SHOWPLAN_XML (Transact-SQL)

In einem Abfragefenster von SQL Server Management Studio können Sie SET SHOWPLAN_ALL ON oder SET SHOWPLAN_XML ON und dann Ihre Abfrage ausführen. An diesem Punkt wird nicht die Ergebnismenge der Abfrage zurückgegeben, sondern der tatsächliche Ausführungsplan. Wenn Sie dann SET SHOWPLAN_ALL OFF oder SET SHOWPLAN_XML OFF ausführen und dann Ihre Abfrage ausführen, erhalten Sie erneut eine Ergebnismenge.

1

Beachten Sie, dass Microsoft in SQL 2012 einen EXPLAIN-Befehl zur TSQL-Syntax hinzugefügt hat. Dies gilt jedoch nur für Azure SQL Data Warehouse und Parallel Data Warehouse - also nicht für das normale RDBMS-Produkt.

Es stellt einen Ausführungsplan im XML-Format bereit und zeigt hilfreich die Teile des Plans, die über die Warehouse-Knoten verteilt werden.

Quelle: TSQL EXPLAIN