Reads and writes per file show which data or log file SQL Server uses the most. This post ranks the files of a demo database by bytes moved with sys.dm_io_virtual_file_stats and explains what the tally can and cannot tell you.
Optimize DATE in WHERE Clause – SQL in Sixty Seconds #189
During Comprehensive Database Performance Health Check, I often get questions about how to Optimize DATE in the WHERE Clause.
Splitting OR Conditions Into UNION ALL for Index Seeks
Test splitting OR conditions into disjoint UNION ALL branches, preserve NULL behavior and row identity, and compare actual index access.
Recovering One Dropped Table From a Full Backup
Recover one dropped table through a separate restored database, choose the recovery point, copy its data, and rebuild the table rules.
Data Compression for Performance – SQL in Sixty Seconds #188
Earlier I wrote a blog post about how Data Compression for Performance can help improve the efficiency of SQL Server.
Estimate Compression Savings for Every Table in a Database
To estimate compression savings for every table, loop over the database and call sp_estimate_data_compression_savings with ROW and PAGE. This post ranks tables by space saved and checks one estimate against a real rebuild.
ZIP Codes Stored as int: Lost Zeros and How to Repair Them
An int column turns 01234 into 1234 and never gives the zero back. Here is how to fix the column, and how to repair old rows without guessing.







