PVI_COPY

Индексы_Степень фрагментации_avg_fragmentation.sql

Apr 1st, 2021
164
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- Индексы_Степень фрагментации_avg_fragmentation.sql
  2.  
  3. --
  4.  
  5. -- План обслуживания «на каждый день» – Часть 1: Автоматическая дефрагментация индексов
  6. -- https://habr.com/ru/post/209698/
  7.  
  8. -- Степень фрагментации того или иного индекса можно узнать из динамического системного представления sys.dm_db_index_physical_stats:
  9. USE  DatabaseName
  10. GO
  11. /*
  12. SELECT *
  13. FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, NULL)
  14. WHERE avg_fragmentation_in_percent > 0
  15. */
  16.  
  17. SELECT
  18. 'INDEX ' + QUOTENAME(i.name) + ' ON ' + QUOTENAME(s2.name) + '.' + QUOTENAME(o.name) + ' '
  19. , s.avg_fragmentation_in_percent
  20. , s.*
  21.  FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, NULL) s
  22.     JOIN sys.indexes i ON i.[object_id] = s.[object_id] AND i.index_id = s.index_id
  23.     JOIN sys.objects o ON o.[object_id] = i.[object_id]
  24.     JOIN sys.schemas s2 ON o.[schema_id] = s2.[schema_id]
  25. WHERE avg_fragmentation_in_percent > 0
  26.   --
  27.   and (o.name like 'am%'
  28.        or
  29.        o.name like 'as%'
  30.        )
  31. order by s.avg_fragmentation_in_percent desc
RAW Paste Data