Meistens führe ich nur die Abfrage aus und finde heraus, wie sie mit realen Daten ausgeführt wird. Wenn es ein Problem gibt, schaue ich mir die Ausführungspläne an.
Brad McGehee hat einen interessanten Artikel zu diesem Thema.
Darin sagt er:
Wenn Sie in einem Ausführungsplan eine der folgenden Angaben sehen, sollten Sie sie als Warnzeichen betrachten und sie auf potenzielle Leistungsprobleme untersuchen. Jeder von ihnen ist aus Sicht der Leistung weniger als ideal.
* Index or table scans: May indicate a need for better or additional indexes.
* Bookmark Lookups: Consider changing the current clustered index, consider using a covering index, limit the number of columns in the SELECT statement.
* Filter: Remove any functions in the WHERE clause, don’t include wiews[sic] in your Transact-SQL code, may need additional indexes.
* Sort: Does the data really need to be sorted? Can an index be used to avoid sorting? Can sorting be done at the client more efficiently?
Es ist nicht immer möglich, diese zu vermeiden. Je mehr Sie sie jedoch vermeiden können, desto schneller ist die Abfrageleistung.