Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Durch das Hinzufügen einer inneren Abfrage wird der Ausführungsplan nicht geändert

Der "Abfrageoptimierer" ist das, was passiert. Wenn Sie eine Abfrage ausführen, verwendet SQL Server einen kostenbasierten Optimierer, um zu ermitteln, was wahrscheinlich der beste Weg ist, um diese Anforderung zu erfüllen (d. h. seinen Ausführungsplan). Betrachten Sie es als eine Routenkarte von Ort A nach Ort B. Es kann viele verschiedene Wege geben, um von A nach B zu gelangen, einige sind schneller als andere. SQL Server wird verschiedene Wege ausarbeiten, um das Endziel zu erreichen, nämlich die Daten zurückzugeben, die die Abfrage erfüllen, und sich für einen Weg entscheiden, der akzeptable Kosten verursacht. Beachten Sie, dass nicht unbedingt JEDER mögliche Weg analysiert wird, da dies unnötig teuer wäre.

In Ihrem Fall hat der Optimierer herausgefunden, dass diese beiden Abfragen auf dasselbe reduziert werden können, sodass Sie denselben Plan erhalten.