Jump to a Catalog Section

Query Tuning Courses

SQLChallenge: Fix My Function

Build your skills at tuning functions with this level 200 SQLChallenge! Then watch the solution videos to see – did you include best practices for performance in your tuned function?

The solution videos also show how to use estimated and actual execution plans to understand what a function is doing, plus how to see more information about function performance in sys.dm_exec_query_stats and sys.dm_exec_function_stats.

SQLChallenges are exclusive to Annual Video League Members.

Go to the SQLChallenge

Auto Tuning with Automatic Plan Correction In Query Store

Want a built-in assistant performance tuner in SQL Server? An assistant who makes recommendations about queries that need speeding up?

In SQL Server 2017+, Query Store can be your new Junior DBA. You get to choose whether or not to allow your assistant to try out and test its suggestions, or whether to manually review them yourself.

In just over an hour of videos, we’ll explore how the Automatic Plan Correction feature in Query Store works: how to configure it, what it does, and steps to get started using it.

Preview / Go to Course

The Case of the Slow Temp Table: A Performance Tuning Problem

10 lessons in 50 minutes

Why would using a temp table cause a stored procedure to slow down dramatically and use massively more logical reads, compared to a permanent table?

Try your hand at speeding up a query with a mysteriously slow temp table.

Preview / Go to Course

Query Tuning with Hints and Query Optimizer HotfixesQuery Tuning with Hints & Optimizer Hotfixes

23 lessons in 2 hours 15 minutes

Get fast, consistent performance in your queries in SQL Server by using hints and trace flags to explore and change your execution plans.

This course covers hinting cardinality estimation, row goals, join hints, temporary objects, recompile, query optimizer hotfixes, and more. Bonus: this course features sample interview questions and answers on using hints & optimizer hotfixes.

Preview / Go to Course

Why Creating an Index Can Slow Down A Query

12 lessons in 1 hour 30 minutes

Work through a query where SQL Server chooses an imperfect non-clustered index and your query becomes slower than it would be if it just scanned the whole table.

Can you speed up the query without modifying any indexes, and only tuning the TSQL?

Preview / Go to Course

Why Table Partitioning Does Not Speed Up Performance (With One Exception)

6 lessons in 52 minutes

Table partitioning can be fantastic, but it may be for different reasons than you think!

In this session, you will learn what partition elimination really does, and why it isn’t usually magic lightning bolts for your application and user queries. You’ll also learn where table partitioning shines – and in which case it can make queries faster.

Preview / Go to Course

Tuning Problem Queries in Table Partitioning

15 lessons in 1 hour 30 minutes

Table partitioning is a fantastic tool to help you manage tables with skyrocketing rowcounts– but some queries may get slower after you partition your tables!

This course teaches you to use execution plans to troubleshoot regressed queries using partitioned tables. Learn what “non-aligned” indexes are, how to tell how many partitions a query is really using, and how to speed up your queries.

Preview / Go to Course

Fight Locking & Blocking

Troubleshooting Blocking and Deadlocks for Beginners

22 lessons in 2 hours 10 minutes

Your SQL Server is slow, and you suspect blocking. You need to prove if blocking really is the culprit and set up simple, lightweight monitoring using free tools and scripts to find the queries causing your blocking problems.

Learn how to set up a free blocking monitor, how to troubleshoot live blocking with free tools, how to configure built-in tools to document blocking when it happens, and how to trace and solve deadlock graphs in SQL Server.

Preview / Go to Course

SQLChallenge: Defuse the Deadlock

4 lessons in 23 minutes

Build your skills at fighting blocking and deadlocks! You are challenged to create an index to prevent the deadlock from happening again.

SQLChallenges are exclusive to Annual Video League Members.

Take the SQLChallenge

Index Design & Tuning Courses

How Index Keys & Includes Work

11 lessons in 1 hour 

Build your powers of index design by learning how indexes are structured in SQL Server. Why can you seek on key columns? Where are included columns written, and how can you use them?

In this demo-based course, we’ll use undocumented commands in SQL Server to explore the secrets of a disk-based rowstore index.

Preview / Go to Course

Indexing for Windowing Functions

9 lessons in 45 minutes

Windowing functions give you great flexibility for analyzing data in SQL Server.

But how can you get the best performance for your windowing functions?

Learn index design for windowing functions, when batch mode may be important, and compare the performance of Window Spool and Window Aggregate operators.

Preview / Go to Course

Execution Plans: Partitioned Tables & Columnstore Indexes

10 lessons in 1 hour 30 minutes

Execution plans are incredibly helpful when it comes to tuning queries using partitioned indexes and columnstore indexes — but when you look closely, you’ll notice that some things are very weird!

Learn how to see how many partitions have been accessed by a query, and when SQL Server will lie about the partition count. See when “0 rows” is really more than 0 rows, and learn the basics of batch mode vs row mode operators.

Preview / Go to Course


SQL Server Practice Interview: Performance Tuning

11 lessons in 50 minutes

Preparing for job interviews is essential. In this session, you’ll get real-world practice questions for performance tuning SQL Server, tips for fielding questions when you don’t know the answer, and guidance on handling special situations.

While this courses touches on several technical topics, the main focus of the course is the soft-skills required to prepare yourself to have a great interview.

Preview / Go to Course

Isolation Levels

The Dirty Secrets of NOLOCK

11 lessons in 50 minutes

What happens when you use NOLOCK hints in your code, or set your isolation level to READ UNCOMMITTED in SQL Server?

Learn what NOLOCK means, why NOLOCK can return incorrect results (and other problems), what allocation order scans are (and how to get them), and other risks and options for reading uncommitted data.

Preview / Go to Course

Repeatable Read and Serializable Isolation Levels

9 lessons in 45 minutes

Serializable and Repeatable Read isolation levels offer protections so your users won’t see weird or incorrect data — but there are tradeoffs for those protections.

Learn how to tell if your existing applications are using these types of isolation levels, when you might want to raise your isolation level in SQL Server, and the tradeoffs you make if you choose serializable or repeatable read with disk based tables.

Preview / Go to Course


How to Configure Max Degree of Parallelism in SQL Server: MAXDOP!

4 lessons in 41 minutes

Learn how to configure the Max Degree at different levels in SQL Server, and how these settings interact with one another:

  • Instance level configuration
  • Database specific configuration
  • Resource Governor
  • Query hints

Preview / Go to Course


Should Developers Manage Index Maintenance?

7 lessons in 1 hour

A developer is troubleshooting performance problems and notices that there’s some serious index fragmentation in tables used by a critical data processing application. Should the team add index maintenance into their application jobs that process data, or will that cause bigger problems down the road?

This hour long course is a high level overview of patterns and techniques, answering a real-world question from a developer.

Go to Course

SSMS & User Tools

SQL Server Management Studio Shortcuts & Secrets  (Free!)

14 lessons in 1 hour 30 minutes

SQL Server Management Studio is so full of tiny buttons and different options that it can be hard to know what to do.

Learn tricks to simplify using SSMS, and make using it more fun and efficient.

Preview / Go to Course

Prices & Enrollment

SQL Symposium™
$399 for one year
Regularly $799
Four online SQL Seminars with recordings
Monthly SQLChallenges and solutions - live webcasts and video courses
Exclusive technical webcasts for subscribers - live and recorded
All online video courses
Quizzes and certificates
Captions, transcripts, adjustable video speed
Immediate access to new courses
SQL Learning League™
$199 for one year
Regularly $399
Monthly SQLChallenges and solutions - live webcasts and video courses
Exclusive technical webcasts for subscribers - live and recorded
All online video courses
Quizzes and certificates
Captions, transcripts, adjustable video speed
Immediate access to new courses
Course Singles
From $29 - $99 for 2 years
Individual online video course
Quiz and certificate
Captions, transcripts, adjustable video speed

Want to purchase subscriptions for multiple users?

The SQL Symposium and the SQL Learning League are each set up to allow you to purchase seats for a variety of team sizes. The larger the team, the cheaper the rate per seat.

Even for a single member, I set this up as a team because many companies have one person buy training for another person — setting up a team of one makes that process simple.