QueryStash
A simple query that can be used to get the list of unused indexes in SQL Server (updated indexes not used in any seeks, scan or lookup operations).
1 2SELECT 3 objects.name AS Table_name, 4 indexes.name AS Index_name, 5 dm_db_index_usage_stats.user_seeks, 6 dm_db_index_usage_stats.user_scans, 7 dm_db_index_usage_stats.user_updates 8FROM 9 sys.dm_db_index_usage_stats 10 INNER JOIN sys.objects ON dm_db_index_usage_stats.OBJECT_ID = objects.OBJECT_ID 11 INNER JOIN sys.indexes ON indexes.index_id = dm_db_index_usage_stats.index_id AND dm_db_index_usage_stats.OBJECT_ID = indexes.OBJECT_ID 12WHERE 13 AND 14 dm_db_index_usage_stats.user_lookups = 0 15 AND 16 dm_db_index_usage_stats.user_seeks = 0 17 AND 18 dm_db_index_usage_stats.user_scans = 0 19ORDER BY 20 dm_db_index_usage_stats.user_updates DESC
Fabio Ramoni
Created: May 7th 2022
Made with ❤️ by @Yekalb
© 2024 Query Stash. All rights reserved
Resources
Examples
Stay up to date