Skip to content

Commit bd51a34

Browse files
committed
Add dates to sort order option
Closes #2845
1 parent c475b84 commit bd51a34

File tree

1 file changed

+39
-40
lines changed

1 file changed

+39
-40
lines changed

sp_BlitzIndex.sql

Lines changed: 39 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -5356,46 +5356,45 @@ ELSE IF (@Mode=1) /*Summarize*/
53565356
FROM #IndexSanity AS i --left join here so we don't lose disabled nc indexes
53575357
LEFT JOIN #IndexSanitySize AS sz ON i.index_sanity_id = sz.index_sanity_id
53585358
LEFT JOIN #IndexCreateTsql AS ict ON i.index_sanity_id = ict.index_sanity_id
5359-
ORDER BY CASE WHEN @SortDirection = 'desc' THEN
5360-
CASE WHEN @SortOrder = N'rows' THEN sz.total_rows
5361-
WHEN @SortOrder = N'reserved_mb' THEN sz.total_reserved_MB
5362-
WHEN @SortOrder = N'size' THEN sz.total_reserved_MB
5363-
WHEN @SortOrder = N'reserved_lob_mb' THEN sz.total_reserved_LOB_MB
5364-
WHEN @SortOrder = N'lob' THEN sz.total_reserved_LOB_MB
5365-
WHEN @SortOrder = N'total_row_lock_wait_in_ms' THEN COALESCE(sz.total_row_lock_wait_in_ms,0)
5366-
WHEN @SortOrder = N'total_page_lock_wait_in_ms' THEN COALESCE(sz.total_page_lock_wait_in_ms,0)
5367-
WHEN @SortOrder = N'lock_time' THEN (COALESCE(sz.total_row_lock_wait_in_ms,0) + COALESCE(sz.total_page_lock_wait_in_ms,0))
5368-
WHEN @SortOrder = N'total_reads' THEN total_reads
5369-
WHEN @SortOrder = N'reads' THEN total_reads
5370-
WHEN @SortOrder = N'user_updates' THEN user_updates
5371-
WHEN @SortOrder = N'writes' THEN user_updates
5372-
WHEN @SortOrder = N'reads_per_write' THEN reads_per_write
5373-
WHEN @SortOrder = N'ratio' THEN reads_per_write
5374-
WHEN @SortOrder = N'forward_fetches' THEN sz.total_forwarded_fetch_count
5375-
WHEN @SortOrder = N'fetches' THEN sz.total_forwarded_fetch_count
5376-
ELSE NULL END
5377-
ELSE 1 END
5378-
DESC, /* Shout out to DHutmacher */
5379-
CASE WHEN @SortDirection = 'asc' THEN
5380-
CASE WHEN @SortOrder = N'rows' THEN sz.total_rows
5381-
WHEN @SortOrder = N'reserved_mb' THEN sz.total_reserved_MB
5382-
WHEN @SortOrder = N'size' THEN sz.total_reserved_MB
5383-
WHEN @SortOrder = N'reserved_lob_mb' THEN sz.total_reserved_LOB_MB
5384-
WHEN @SortOrder = N'lob' THEN sz.total_reserved_LOB_MB
5385-
WHEN @SortOrder = N'total_row_lock_wait_in_ms' THEN COALESCE(sz.total_row_lock_wait_in_ms,0)
5386-
WHEN @SortOrder = N'total_page_lock_wait_in_ms' THEN COALESCE(sz.total_page_lock_wait_in_ms,0)
5387-
WHEN @SortOrder = N'lock_time' THEN (COALESCE(sz.total_row_lock_wait_in_ms,0) + COALESCE(sz.total_page_lock_wait_in_ms,0))
5388-
WHEN @SortOrder = N'total_reads' THEN total_reads
5389-
WHEN @SortOrder = N'reads' THEN total_reads
5390-
WHEN @SortOrder = N'user_updates' THEN user_updates
5391-
WHEN @SortOrder = N'writes' THEN user_updates
5392-
WHEN @SortOrder = N'reads_per_write' THEN reads_per_write
5393-
WHEN @SortOrder = N'ratio' THEN reads_per_write
5394-
WHEN @SortOrder = N'forward_fetches' THEN sz.total_forwarded_fetch_count
5395-
WHEN @SortOrder = N'fetches' THEN sz.total_forwarded_fetch_count
5396-
ELSE NULL END
5397-
ELSE 1 END
5398-
ASC,
5359+
ORDER BY /* Shout out to DHutmacher */
5360+
/*DESC*/
5361+
CASE WHEN @SortOrder = N'rows' AND @SortDirection = N'desc' THEN sz.total_rows ELSE NULL END DESC,
5362+
CASE WHEN @SortOrder = N'reserved_mb' AND @SortDirection = N'desc' THEN sz.total_reserved_MB ELSE NULL END DESC,
5363+
CASE WHEN @SortOrder = N'size' AND @SortDirection = N'desc' THEN sz.total_reserved_MB ELSE NULL END DESC,
5364+
CASE WHEN @SortOrder = N'reserved_lob_mb' AND @SortDirection = N'desc' THEN sz.total_reserved_LOB_MB ELSE NULL END DESC,
5365+
CASE WHEN @SortOrder = N'lob' AND @SortDirection = N'desc' THEN sz.total_reserved_LOB_MB ELSE NULL END DESC,
5366+
CASE WHEN @SortOrder = N'total_row_lock_wait_in_ms' AND @SortDirection = N'desc' THEN COALESCE(sz.total_row_lock_wait_in_ms,0) ELSE NULL END DESC,
5367+
CASE WHEN @SortOrder = N'total_page_lock_wait_in_ms' AND @SortDirection = N'desc' THEN COALESCE(sz.total_page_lock_wait_in_ms,0) ELSE NULL END DESC,
5368+
CASE WHEN @SortOrder = N'lock_time' AND @SortDirection = N'desc' THEN (COALESCE(sz.total_row_lock_wait_in_ms,0) + COALESCE(sz.total_page_lock_wait_in_ms,0)) ELSE NULL END DESC,
5369+
CASE WHEN @SortOrder = N'total_reads' AND @SortDirection = N'desc' THEN total_reads ELSE NULL END DESC,
5370+
CASE WHEN @SortOrder = N'reads' AND @SortDirection = N'desc' THEN total_reads ELSE NULL END DESC,
5371+
CASE WHEN @SortOrder = N'user_updates' AND @SortDirection = N'desc' THEN user_updates ELSE NULL END DESC,
5372+
CASE WHEN @SortOrder = N'writes' AND @SortDirection = N'desc' THEN user_updates ELSE NULL END DESC,
5373+
CASE WHEN @SortOrder = N'reads_per_write' AND @SortDirection = N'desc' THEN reads_per_write ELSE NULL END DESC,
5374+
CASE WHEN @SortOrder = N'ratio' AND @SortDirection = N'desc' THEN reads_per_write ELSE NULL END DESC,
5375+
CASE WHEN @SortOrder = N'forward_fetches' AND @SortDirection = N'desc' THEN sz.total_forwarded_fetch_count ELSE NULL END DESC,
5376+
CASE WHEN @SortOrder = N'fetches' AND @SortDirection = N'desc' THEN sz.total_forwarded_fetch_count ELSE NULL END DESC,
5377+
CASE WHEN @SortOrder = N'create_date' AND @SortDirection = N'desc' THEN CONVERT(DATETIME, i.create_date) ELSE NULL END DESC,
5378+
CASE WHEN @SortOrder = N'modify_date' AND @SortDirection = N'desc' THEN CONVERT(DATETIME, i.modify_date) ELSE NULL END DESC,
5379+
/*ASC*/
5380+
CASE WHEN @SortOrder = N'rows' AND @SortDirection = N'asc' THEN sz.total_rows ELSE NULL END ASC,
5381+
CASE WHEN @SortOrder = N'reserved_mb' AND @SortDirection = N'asc' THEN sz.total_reserved_MB ELSE NULL END ASC,
5382+
CASE WHEN @SortOrder = N'size' AND @SortDirection = N'asc' THEN sz.total_reserved_MB ELSE NULL END ASC,
5383+
CASE WHEN @SortOrder = N'reserved_lob_mb' AND @SortDirection = N'asc' THEN sz.total_reserved_LOB_MB ELSE NULL END ASC,
5384+
CASE WHEN @SortOrder = N'lob' AND @SortDirection = N'asc' THEN sz.total_reserved_LOB_MB ELSE NULL END ASC,
5385+
CASE WHEN @SortOrder = N'total_row_lock_wait_in_ms' AND @SortDirection = N'asc' THEN COALESCE(sz.total_row_lock_wait_in_ms,0) ELSE NULL END ASC,
5386+
CASE WHEN @SortOrder = N'total_page_lock_wait_in_ms' AND @SortDirection = N'asc' THEN COALESCE(sz.total_page_lock_wait_in_ms,0) ELSE NULL END ASC,
5387+
CASE WHEN @SortOrder = N'lock_time' AND @SortDirection = N'asc' THEN (COALESCE(sz.total_row_lock_wait_in_ms,0) + COALESCE(sz.total_page_lock_wait_in_ms,0)) ELSE NULL END ASC,
5388+
CASE WHEN @SortOrder = N'total_reads' AND @SortDirection = N'asc' THEN total_reads ELSE NULL END ASC,
5389+
CASE WHEN @SortOrder = N'reads' AND @SortDirection = N'asc' THEN total_reads ELSE NULL END ASC,
5390+
CASE WHEN @SortOrder = N'user_updates' AND @SortDirection = N'asc' THEN user_updates ELSE NULL END ASC,
5391+
CASE WHEN @SortOrder = N'writes' AND @SortDirection = N'asc' THEN user_updates ELSE NULL END ASC,
5392+
CASE WHEN @SortOrder = N'reads_per_write' AND @SortDirection = N'asc' THEN reads_per_write ELSE NULL END ASC,
5393+
CASE WHEN @SortOrder = N'ratio' AND @SortDirection = N'asc' THEN reads_per_write ELSE NULL END ASC,
5394+
CASE WHEN @SortOrder = N'forward_fetches' AND @SortDirection = N'asc' THEN sz.total_forwarded_fetch_count ELSE NULL END ASC,
5395+
CASE WHEN @SortOrder = N'fetches' AND @SortDirection = N'asc' THEN sz.total_forwarded_fetch_count ELSE NULL END ASC,
5396+
CASE WHEN @SortOrder = N'create_date' AND @SortDirection = N'asc' THEN CONVERT(DATETIME, i.create_date) ELSE NULL END ASC,
5397+
CASE WHEN @SortOrder = N'modify_date' AND @SortDirection = N'asc' THEN CONVERT(DATETIME, i.modify_date) ELSE NULL END ASC,
53995398
i.[database_name], [Schema Name], [Object Name], [Index ID]
54005399
OPTION (RECOMPILE);
54015400
END;

0 commit comments

Comments
 (0)