Frage

Ich habe eine Abfrage, die langsam ausgeführt wird. Ich weiß, dass im Allgemeinen schneller Leistung, Grenze verbindet, und versuchen Procs statt gerade Abfragen zu verwenden. Aufgrund von Geschäftsregeln, kann ich nicht Procs verwenden. Ich habe geschnitten bereits die Anzahl der so viel verbindet, wie ich mir vorstellen kann.

Was ist der nächste Schritt in der Abfrageoptimierung?

War es hilfreich?

Lösung

die einfachste Sache zu tun ist, um Management-Studio geht diesen Befehl ausführen:

SET SHOWPLAN_ALL ON

dann Ihre tatsächliche Abfrage ausführen.

Sie werden nicht Ihre regelmäßigen Abfrageergebnis erhalten. Es werden Ihnen den Ausführungsplan (eine sehr detaillierte Liste, was SQL Server ist Ihre Abfrage zu drehen) in einer Ergebnismenge. Schauen Sie die Ausgabe über und versuchen zu lernen, was es bedeutet. Ich sehe im Allgemeinen für „SCAN“, dass ein langsamer Teil ist, und ich versuche, Umschreiben, damit er einen Index verwendet.

Andere Tipps

Indizes Hinzufügen ist wahrscheinlich die Nummer eins, was Sie die Abfrageleistung verbessern können und Sie haben erwähnt, es nicht.

Haben Sie bei den Ausführungsplan sah nach, ob diese mit zusätzlichen Indizes verbessert werden könnte?

Außerdem sollten Sie sicherstellen, dass Ihre Anfragen so geschrieben werden, so dass sie alle Indizes verwenden können, die sind vorhanden wirksam (z vermeiden nicht sargable Konstrukte, vermeiden *)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top