Today I presented a session as part of our monthly live webinars. The title of the session was "The Most Important Performance Factor in SQL Server". It was about statistics.
Why do I think that statistics is the most important performance factor in SQL Server? Because for a query to have good performance, it needs to have a good execution plan. And in order to be able to generate good execution plans, the optimizer needs good statistics. Without them, the optimizer is blind. It won't be able to estimate the number of rows in each step in the execution plan, and the result will be a poor plan and poor performance.
So this session was all about statistics. What they are, how they are created and updated, how we can track and manage them. We also covered some specific type of statistics, such as multi-column statistics, filtered statistics and incremental statistics.
I had some issues with my scripts during the session. Sorry about that. But I fixed everything, and made some changes. You can download the updated version of the scripts here. I encourage you to download and play with it. This is the best way to learn.
You can also watch the session recording here.