Black Friday prices end in 22d 19h 25m — See the sale

Author: Brent Ozar

I make Microsoft SQL Server go faster. I love teaching, travel, cars, and laughing. I'm based out of Las Vegas. He/him.
News & Opinion

It’s Been 10 Years. Has Microsoft Built What You Voted For?

Ten years ago, I published a blog post with the top 10 most highly upvoted requests for Microsoft SQL Server as shown on their feedback site at the time, Connect.Microsoft.com. That site has gone out to a nice farm upstate, but let's revisit that top 10 list to see whether Microsoft actually built what you wanted.

Read more about It’s Been 10 Years. Has Microsoft Built What You Voted For? 9 comments — Join the discussion
Performance Tuning

Database Animations: The Difference Between Row Compression and Page Compression

What's the difference between SQL Server's row compression and page compression, and when does each one make sense?

Row compression turns every fixed-length datatype into a variable-length datatype, using as little space as possible to store it
Page compression does that, AND adds a dictionary of repeated data on the page, getting more compression at the cost of more CPU

Read more about Database Animations: The Difference Between Row Compression and Page Compression 6 comments — Join the discussion

[Video] Office Hours in Zhengzhou, China

I'm back at the People's Park in Zhengzhou, Yves' hometown, watching retirees be active while I lounge around and take your top-voted questions from https://pollgab.com/room/brento.

Prefer listening to this via podcast? Good news! You can now subscribe to Office Hours on Spotify, Apple Podcasts, Podcast Index, Podcast Addict, Podchaser, and anywhere else fine podcasts are sold.

Read more about [Video] Office Hours in Zhengzhou, China Be the first to comment

Database Animations: Why Higher Maxdop Equals More TempDB Spills

You've probably heard of the setting Max Degree of Parallelism. I hate that name: it should really be called just plain ol' Degrees of Parallelism, and here's why. There are a lot of conflicting opinions out there about how to set it, and Microsoft has official guidance about it in that article above. It's basically set…

Read more about Database Animations: Why Higher Maxdop Equals More TempDB Spills 8 comments — Join the discussion
T-SQL & Development

When CTEs Don’t Work, Try Temp Tables – #TSQL2sday

Your queries won’t tune themselves. My 2027 Live Class Season Pass is $995 (normally $4,395), with live Fundamentals and Mastering classes plus recordings. Register by October 31 to join Fundamentals Week, November 2–6. See the pass.

Common Table Expressions are awesome because they let SQL Server reorder processing in whatever way it deems to be the most efficient for your current data distribution, on your current version of SQL Server. Default to CTEs.

Read more about When CTEs Don’t Work, Try Temp Tables – #TSQL2sday 10 comments — Join the discussion

[Video] Office Hours: Car in the House Edition

Today I'm hanging out in the dining room, or what would normally be a dining room, but we use it to store a 1992 Honda Beat. I explain why, and then take your top-voted questions from https://pollgab.com/room/brento. The audio on this one is a little tinny - the room is super-echo-y and I don't think the camera picked up my lapel microphone. Sorry about that!

Read more about [Video] Office Hours: Car in the House Edition 4 comments — Join the discussion
T-SQL & Development

Database Animations: Why Big Columns May Not Affect Logical Reads

Your queries won’t tune themselves. My 2027 Live Class Season Pass is $995 (normally $4,395), with live Fundamentals and Mastering classes plus recordings. Register by October 31 to join Fundamentals Week, November 2–6. See the pass.

Over the years, tables - like your waistline - tend to get bigger. We keep tacking on more and more columns, one at a time, in order to handle app needs. It's easier to add "just one more column" than it is to break things off into a whole separate table.

Read more about Database Animations: Why Big Columns May Not Affect Logical Reads Be the first to comment

[Video] Office Hours: Desert Database Q&A

I'm in the Lake Mead National Recreation Area today, hanging out in the triple-digit heat, to answer your top-voted questions from https://pollgab.com/room/brento.

Prefer listening to this via podcast? Good news! You can now subscribe to Office Hours on Spotify, Apple Podcasts, Podcast Index, Podcast Addict, Podchaser, and anywhere else fine podcasts are sold.

Read more about [Video] Office Hours: Desert Database Q&A 3 comments — Join the discussion

Miscellaneous Thoughts About Building Stuff with AI in July 2026

Over the past couple of years, I've been using the bejeezus out of AI. I don't really feel like an expert by any means - it's so hard to keep up with the advancements - but I've been enjoying reading Grant Fritchey's series on building stuff with AI, and I thought you might enjoy some of my lessons learned as well.

Read more about Miscellaneous Thoughts About Building Stuff with AI in July 2026 7 comments — Join the discussion

[Video] Office Hours: Long Answers Edition

This week's top-voted questions from https://pollgab.com/room/brento finds us opening ChatGPT multiple times! It's fun to show how I use it, and what it thinks of me.

Prefer listening to this via podcast? Good news! You can now subscribe to Office Hours on Spotify, Apple Podcasts, Podcast Index, Podcast Addict, Podchaser, and anywhere else fine podcasts are sold.

Read more about [Video] Office Hours: Long Answers Edition Be the first to comment

Database Animations: You’ve Heard of Page Splits. Here’s What They Really Mean.

You've heard that page splits are bad, and they're an indication that your table design is making your storage work too hard. You've heard that the right answer to fix it is adjusting fill factor lower, or doing regular index maintenance.

Before you watch the below animation, you'll wanna get up to speed with how index seeks work. Then, let's explain page splits with an animation:

Read more about Database Animations: You’ve Heard of Page Splits. Here’s What They Really Mean. 15 comments — Join the discussion
T-SQL & Development

T-SQL Tuesday Roundup: You Know A Query’s Gonna Be Bad When…

For this month's T-SQL Tuesday, I invited y'all to tell me how you know a query's gonna be bad when you open it. Riccardo Perico and Shane O'Neill says WHILE loops and/or CURSORs are pretty good indicators. I agree, because especially when you're opening code in the year 2026, and someone still hasn't figured this out…

Read more about T-SQL Tuesday Roundup: You Know A Query’s Gonna Be Bad When… 14 comments — Join the discussion