The latest edition of “SQL Server Execution Plans”, by Grant Fritchey, is available as a free download in pdf format. This second edition is more evolution than revolution. There is also plenty of new content.
Every day, out in the various online forums devoted to SQL Server, and on Twitter, the same types of questions come up repeatedly: Why is this query running slowly? Why is SQL Server ignoring my index? Why does this query run quickly sometimes and slowly at others? My response is the same in each case: have you looked at the execution plan? An execution plan describes what’s going on behind the scenes when SQL Server executes a query. It shows how the query optimizer joined the data from the various tables defined in the query, which indexes it used, if any, how it performed any aggregations or sorting, and much more. It also estimates the cost of all of these operations, in terms of the relative load placed on the system. Every Database Administrator, developer, report writer, and anyone else who writes T-SQL to access SQL Server data, must understand how to read and interpret execution plans. My book leads you right from the basics of capturing plans, through how to interrupt them in their various forms, graphical or XML, and then how to use the information you find there to diagnose the most common causes of poor query performance, and so optimize your SQL queries, and improve your indexing strategy.
Table of Contents
- Execution Plan Basics
- Graphical Execution Plans for Basic Queries
- Text and XML Execution Plans for Basic Queries
- Understanding More Complex Query Plans
- Controlling Execution Plans with Hints
- Cursor Operations
- Special Datatypes and Execution Plans
- Advanced Topics