1
0
mirror of https://github.com/alex-bochkov/ssms-addin.git synced 2025-12-05 22:17:31 +02:00
Files
ssms-addin/QueryTemplates/Performance/index-fragmentation.sql

17 lines
978 B
MySQL
Raw Normal View History

2017-09-11 07:52:50 -07:00
SELECT dbschemas.[name] as 'Schema',
dbtables.[name] as 'Table',
dbindexes.[name] as 'Index',
indexstats.avg_fragmentation_in_percent,
indexstats.page_count,
2018-06-06 12:46:07 -07:00
'ALTER INDEX ['+dbindexes.[name]+'] ON [' + dbschemas.name + '].['+dbtables.[name]+'] REORGANIZE;',
'ALTER INDEX ['+dbindexes.[name]+'] ON [' + dbschemas.name + '].['+dbtables.[name]+'] REBUILD WITH (FILLFACTOR = 90, ONLINE = ON, DATA_COMPRESSION = PAGE, SORT_IN_TEMPDB = ON);'
2017-09-11 07:52:50 -07:00
FROM sys.dm_db_index_physical_stats (DB_ID(), NULL, NULL, NULL, NULL) AS indexstats
INNER JOIN sys.tables dbtables on dbtables.[object_id] = indexstats.[object_id]
INNER JOIN sys.schemas dbschemas on dbtables.[schema_id] = dbschemas.[schema_id]
INNER JOIN sys.indexes AS dbindexes ON dbindexes.[object_id] = indexstats.[object_id]
AND indexstats.index_id = dbindexes.index_id
WHERE indexstats.database_id = DB_ID()
AND indexstats.page_count > 100
AND dbindexes.[name] IS NOT NULL
2018-06-06 12:46:07 -07:00
ORDER BY indexstats.avg_fragmentation_in_percent DESC