You’ve conquered my Fundamentals of Parameter Sniffing class, and now it’s time to get to work. You know you have parameter sniffing problems in your environment – and now you need to learn how to fix ’em.

In this 3-day course, you’ll learn:

  • How to spot the common places where plans diverge: parallelism, memory grants, index selection, and join types
  • How to capture good, bad, and terrible plans with the plan cache and Query Store
  • Ways to mitigate parameter sniffing with index changes, query tuning, and database-level settings
  • How SQL Server 2017 and 2019 try (and usually fail) to reduce it with Adaptive Joins, Adaptive Memory Grants, and Automatic Tuning

This course is 100% demos: the only slides are the introductions at the start of the class, and the recap at the end of the class. The rest of the time, we’ll be working in SQL Server Management Studio. Roll up your sleeves and join me!

We’ll start with a round of introductions so you can meet your fellow students, and then do a quick reminder of the most important lessons from the Fundamentals of Parameter Sniffing class. One of the most important ones: never, ever test with local variables. Always use real stored procedures & dynamic SQL. Parameter sniffing only happens with parameters, not local variables.

Your Progress So Far in This Class

This is driven by the mark-as-complete buttons in each module of the class. (Let’s be honest: you’re probably just going to mark them as complete because you’re that kind of student. I feel you.)