Guest User

Untitled

a guest
Feb 25th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.39 KB | None | 0 0
  1. SELECT I.name as IndexName,
  2. CASE WHEN I.is_unique = 1 THEN 'Yes' ELSE 'No' END as 'Unique',
  3. I.type_desc COLLATE DATABASE_DEFAULT as Index_Type,
  4. '[' + SCHEMA_NAME(T.schema_id) + ']' as 'Schema',
  5. '[' + T.name + ']' as TableName,
  6. STUFF((SELECT ', [' + C.name + CASE WHEN IC.is_descending_key = 0 THEN '] ASC' ELSE '] DESC' END
  7. FROM sys.index_columns IC INNER JOIN sys.columns C ON IC.object_id = C.object_id AND IC.column_id = C.column_id
  8. WHERE IC.is_included_column = 0 AND IC.object_id = I.object_id AND IC.index_id = I.Index_id
  9. FOR XML PATH('')), 1, 2, '') as Key_Columns,
  10. Included_Columns,
  11. I.filter_definition,
  12. CASE WHEN I.is_padded = 1 THEN 'ON' ELSE 'OFF' END as PAD_INDEX,
  13. CASE WHEN ST.no_recompute = 0 THEN 'OFF' ELSE 'ON' END as [Statistics_Norecompute],
  14. CONVERT(VARCHAR(5), CASE WHEN I.fill_factor = 0 THEN 100 ELSE I.fill_factor END) as [Fillfactor],
  15. CASE WHEN I.ignore_dup_key = 1 THEN 'ON' ELSE 'OFF' END as [Ignore_Dup_Key],
  16. CASE WHEN I.allow_row_locks = 1 THEN 'ON' ELSE 'OFF' END as [Allow_Row_Locks],
  17. CASE WHEN I.allow_page_locks = 1 THEN 'ON' ELSE 'OFF' END [Allow_Page_Locks]
  18. FROM sys.indexes I INNER JOIN
  19. sys.tables T ON T.object_id = I.object_id INNER JOIN
  20. sys.stats ST ON ST.object_id = I.object_id AND ST.stats_id = I.index_id INNER JOIN
  21. sys.data_spaces DS ON I.data_space_id = DS.data_space_id INNER JOIN
  22. sys.filegroups FG ON I.data_space_id = FG.data_space_id LEFT OUTER JOIN
  23. (SELECT * FROM
  24. (SELECT IC2.object_id, IC2.index_id,
  25. STUFF((SELECT ', ' + C.name FROM sys.index_columns IC1 INNER JOIN
  26. sys.columns C ON C.object_id = IC1.object_id
  27. AND C.column_id = IC1.column_id
  28. AND IC1.is_included_column = 1
  29. WHERE IC1.object_id = IC2.object_id AND IC1.index_id = IC2.index_id
  30. GROUP BY IC1.object_id, C.name, index_id FOR XML PATH('')
  31. ), 1, 2, '') as Included_Columns
  32. FROM sys.index_columns IC2
  33. GROUP BY IC2.object_id, IC2.index_id) tmp1
  34. WHERE Included_Columns IS NOT NULL
  35. ) tmp2
  36. ON tmp2.object_id = I.object_id AND tmp2.index_id = I.index_id
  37. WHERE I.is_primary_key = 0 AND I.is_unique_constraint = 0;
Add Comment
Please, Sign In to add comment