|
declare @table table(object_id int,ind_name sysname,index_id int)
insert into @table
select top 25 ui.[object_id],si.name,ui.index_id
from dbo.Unused_Indexes ui join sys.indexes si
on ui.[object_id] = si.[object_id] and ui.index_id = si.index_id
where objectproperty(ui.[object_id],'IsUserTable') = 1
group by ui.[object_id],ui.index_id,si.name
having count(*) >30
order by count(*) desc,ui.[object_id],ui.index_id asc
--
select object_name(ui.[object_id]) as TableName,ui.ind_name as IndexName,
max(fps.index_level)as IndexDepth,sum(fps.page_count) as TotalPages,max(fps.record_count) as LeafRows, sum(fps.page_count)/128 as Mb
from @table ui
CROSS APPLY master.dbo.fn_db_index_physical_stats (DB_ID(),ui.[object_id],ui.index_id,NULL, 'Detailed') AS fps
group by ui.[object_id],ui.ind_name
order by sum(fps.page_count) desc ; |