The most popular posts this year were when I ran my Fundamentals classes for free throughout the year. I ran a different class per month, and posted signups and videos here on the blog. I’m setting those aside, though, because they’re not evergreen: they’ve since disappeared since I only ran ’em free for a limited period of time.

Here are the still-present posts I wrote this year that y’all visited the most:
- 10. What Is the SQL Server CEIP Service? – I only wrote this in October, but it’s already cracked the top 10. Over the last couple of years, I’ve been focusing the blog posts more on questions that I hear from the public, and this one had been coming up a lot during performance engagements, especially due to its blocking problems.
- 9. Performance Tuning Means 3 Things – managing what requests are made, the efficiency of each request, and the hardware capacity.
- 8. 3 Ways to Run DBCC CHECKDB Faster – because WITH PHYSICAL_ONLY is a good start, but it’s just one of a number of things you can do.
- 7. Breaking News: SQL Server 2019 CU2 Breaks Agent – between this, the scalar functions problems, and the recall of CU7, it’s been a rough year for early adopters of SQL Server 2019.
- 6. Recommended SQL Server Books, 2020 Edition – I wrote this because I kept getting asked this question during webcasts.
- 5. The 2020 Data Professional Salary Survey Results Are In – folks love finding out if they’re underpaid.
- 4. “Working” From Home? Watch a Bunch of Free SQL Server Videos on YouTube – as the quarantines kicked in, I wanted to give folks a way to start upgrading their skills, especially folks who would usually attend local user groups.
- 3. How to Remove Times from Dates in SQL Server – it’s easy to cast a datetime value as a date to strip off the time, and it works, and you get an index seek, but the estimates are usually bad.
- 2. What Are Soft Deletes, and How Are They Implemented? – I love this technique, but it’s not intuitive.
- 1. How to Pass a List of Values Into a Stored Procedure – in which I explain why you don’t want to join directly to the STRING_SPLIT command.
Over the course of the last couple of years, I’ve been writing more “how do I ___?” posts – and to understand why, here are the posts you visited most in 2020 regardless of when we wrote ’em:
- 5. How to Move TempDB to Another Drive & Folder
- 4. How to Download the Stack Overflow Database
- 3. How to Select Specific Columns in an Entity Framework Query
- 2. How to count the number of rows in a table in SQL Server
- 1. How to fix the error “String or binary data would be truncated”
“How to” posts are particularly evergreen: as long as they’re about long-lasting pain points, they’re the kinds of things you can write and then gradually get more and more viewers over time. It’s also the key to more subscribers: as readers stumble across your stuff repeatedly in Google, they’re more likely to subscribe to your work because they know you write useful stuff.