In this article i am goint to explain write a Scrits to find all the indexes that have included columns in it and the name of the table to which the index belongs to
SELECT
S.NAME AS 'SchemaName',
T.NAME AS 'TableName',
I.NAME AS 'IndexName',
C.NAME AS 'ColumnName',
i.type_desc AS 'IndexType',
CASE WHEN I.is_primary_key = 1 THEN 'Yes' ELSE 'No' END AS 'IsPrimaryKey'
FROM SYS.TABLES AS T
INNER JOIN SYS.SCHEMAS AS S ON T.SCHEMA_ID = S.SCHEMA_ID
INNER JOIN SYS.INDEXES AS I ON I.OBJECT_ID = T.OBJECT_ID
INNER JOIN SYS.INDEX_COLUMNS AS IC ON IC.OBJECT_ID = T.OBJECT_ID
INNER JOIN SYS.COLUMNS AS C ON C.OBJECT_ID = T.OBJECT_ID AND IC.INDEX_ID = I.INDEX_ID
AND IC.COLUMN_ID = C.COLUMN_ID
WHERE 1 = 1 ORDER BY I.NAME
No comments:
Post a Comment