percent_complete tells you how far a running command has come, but only some commands fill it in. This post times eleven commands on SQL Server 2025, shows which ones report real progress and which stay at 0, and adds a way to watch the silent ones.
Parameters of sp_who2: Active, Session ID and the Login Trap
The parameters of sp_who2 are one optional value that can be a session ID, the word active or a login name. This post counts the rows each form returns, shows that the login form does not filter, and explains the errors.
Capture sp_who2 Output Into a Table With INSERT EXEC
To capture sp_who2 output, create a table with matching columns and fill it with INSERT EXEC. This post builds the table, captures the session list three times with a time stamp, and shows the two errors that stop the method.
DMV Version of sp_who2: A Cleaner Session List
A DMV version of sp_who2 returns the same session details from documented views and leaves out the system tasks. This post builds the query, shows why the old spid above 50 filter fails, and stores the result in a temporary table.
Slow Running Query – SQL in Sixty Seconds #146
One of the most popular questions I receive during Comprehensive Database Performance Health Check is if I have a script that lists Slow Running Query.
Slowest Cached Queries in SQL Server: Time, Reads and Plan
To find the slowest cached queries in SQL Server, rank each statement by its average elapsed time and keep its plan beside it. This post builds a small workload, reads sys.dm_exec_query_stats with the plan, and shows why a database filter on the sql text hides every ad hoc query.
Uniquifier: The Hidden Cost of Duplicate Clustered Keys
The uniquifier is a hidden 4-byte value that SQL Server adds to duplicate keys in a non-unique clustered index. This post measures its real cost row by row on SQL Server 2025 and shows it on the page. It also compares it with a unique key you choose yourself.







