During the Comprehensive Database Performance Health Check, I often get the question about Estimated vs Actual Execution Plan. Today we are going to discuss differences and similarity between them.
Lots of people think that Estimated Executed Plan are not real and they change significantly when the actual execution plan is built. Actually, the estimated execution plan is always the plan which SQL Server would have used if we had run the query when the estimated plan was built.
I know lots of people usually do not believe the statement: Unless something big has not changed between running estimated plan and actual plan, they would be almost same all the time.
How about this, why not try out yourself. You may find that most of the time estimated and actual execution plan would be the same in your system. I have seen them different when the statistics have been changed, cached is cleaned or change in the data, the execution plans are almost the same every time.
Here is the SQL in the Sixty Seconds video discussing this topic.
The major difference between Estimated vs Actual Execution Plan is that the Actual Execution plan contains additional details about the operator execution time as well as the row read from the database. If you find my SQL in the Sixty Seconds Videos interesting. Please do not forget to subscribe to my YouTube Channel.
Reference: Pinal Dave (https://blog.sqlauthority.com)