22-25 April 2026

Execution plans explained

Proposed session for SQLBits 2026

TL; DR

Whether you've never seen an execution plan before, or whether you already have experience with execution plans, this workshop will teach you how to look at an execution plan and then KNOW why your query is slow ... and what you can do to fix that!

Session Details

You probably have some tricks up your sleeve for dealing with slow queries. Index the columns in the join and where. Rewrite the WHERE clause to enable index usage. Tinker with the join order, or perhaps even break up the query in smaller parts. Those tricks work. Sometimes. Not always. And when they don't, your job suddenly gets frustrating!

Sometimes, you wish you knew WHY a query is slow. So that you can target your changes exactly right, at precisely the root cause of the slowness. And the good news is, there already exists a way to find the root cause of bad performance. You "only" need to learn to work with execution plans

In this full-day workshop, you will learn everything you need. You will learn what execution plans are, and where you can find them. You will learn the basics of how to read execution plans. And you will learn all you need about all of the commonly encountered operators in execution plans: what their function is, how they operate, and what effect that has on performance.

In short: After attending this workshop, you will know how to obtain an execution plan for a slow running query, and you will know how to look at that plan and find the spot where it hurts, so that you know what to do to fix the performance issue.

Regardless of whether you have never seen an execution plan before, or whether you already have experience working with execution plans, this workshop will teach you how to look at an execution plan and then KNOW why your query is slow ... and what you can do to fix that!

3 things you'll get out of this session

Learn where to find and how to read execution plans. Learn what each operator does and how that affects performance. Start to understand interactions between operators.

Speakers

Hugo Kornelis

sqlserverfast.com/blog

Hugo Kornelis's previous sessions

Here’s the execution plan … now what?
This session is for those who have learned about execution plans, but notice that the theory lessons have not prepared them for the messy reality of real production code and execution plans. Using more complex examples than typical for conference sessions, I will guide you through a few examples, to show how execution plans can be used to pinpoint isues and fix them
 
Parameter Sensitive Plan Optimization in SQL 2022 ... As Cool as it Sounds?
We'll provide a balance perspective of the benefits and limitations of the new Parameter Sensitive Plan Optimization feature in SQL 2022 to help you decide if it's right for your environment.
 
Here’s the execution plan … now what?
You know where to find an execution plan. You have taken your first steps reading them. But how are you going to apply this knowlledge to real world problems?
 
Fast Focus: Scalar User-defined Functions in SQL Server 2019
SQL Server 2019 introduces FROID, a framework to inline user-defined functions, promising much better performance. What problem does it solve? And how does it work?
 
Execution plans ... where do I start?
Execution plans are key to understanding bad query performance. But they can be overwhelming to the new user. Where to start? This session will show the basics!
 
From adaptive to intelligent: query procesing in SQL 2019
SQL Server 2019 includes new query processing features such as batch mode on rowstore, memory grant feedback, approximate query processing, and more. How do these work? Are they as good as Microsoft wants us to believe?
 
Normalization Beyond Third Normal Form
Many people think that normalization stops at Third Normal Form. But there are lots of higher normal forms. And they are not as complex or as irrelevant as often claimed. If you want to design better databases, then come attend this session!
 
Everything you always wanted to know about MERGE
In this demo-rich session, Hugo Kornelis shows how the full syntax of MERGE enables more than just synchronizing data. You'll get an overview of all the available options, plus a few surprising pitfalls you may not be aware of.
 
SQL Server 2012: Column store indexes
This session will present you with a fascinating behind-the-scenes deep-dive view of the new column store index feature. How do column store indexes work? How are they built? And how can they yield such enormous performance boosts to some workloads?