About Me

Barking, Essex, United Kingdom
MCITP DBA ,MCITP BI & Oracle OCP 11G

Wednesday, February 18, 2015

Drop the unused index

-- Unused Index Script
-- Original Author: Pinal Dave (C) 2011
SELECT TOP 25
o.name 
AS ObjectNamei.name AS IndexNamei.index_id AS IndexIDdm_ius.user_seeks AS UserSeekdm_ius.user_scans AS UserScansdm_ius.user_lookups AS UserLookupsdm_ius.user_updates AS UserUpdatesp.TableRows'DROP INDEX ' QUOTENAME(i.name)
' ON ' QUOTENAME(s.name) + '.' +QUOTENAME(OBJECT_NAME(dm_ius.OBJECT_ID)) AS 'drop statement'FROM sys.dm_db_index_usage_stats dm_iusINNER JOIN sys.indexes i ON i.index_id dm_ius.index_id ANDdm_ius.OBJECT_ID i.OBJECT_IDINNER JOIN sys.objects o ON dm_ius.OBJECT_ID o.OBJECT_IDINNER JOIN sys.schemas s ON o.schema_id s.schema_idINNER JOIN (SELECT SUM(p.rowsTableRowsp.index_idp.OBJECT_IDFROM sys.partitions p GROUP BY p.index_idp.OBJECT_IDpON p.index_id dm_ius.index_id AND dm_ius.OBJECT_ID p.OBJECT_IDWHERE OBJECTPROPERTY(dm_ius.OBJECT_ID,'IsUserTable'1AND dm_ius.database_id DB_ID()
AND 
i.type_desc 'nonclustered'AND i.is_primary_key 0AND i.is_unique_constraint 0ORDER BY (dm_ius.user_seeks dm_ius.user_scans dm_ius.user_lookups)ASCGO

No comments:

Post a Comment