How to get index column names of a table from SQL Server

by

select i.name as IndexName, co.[name] as ColumnName
from sys.indexes i
join sys.objects o on i.object_id = o.object_id
join sys.schemas s on s.schema_id = o.schema_id
join sys.index_columns ic on ic.object_id = i.object_id
and ic.index_id = i.index_id
join sys.columns co on co.object_id = i.object_id
and co.column_id = ic.column_id
where ic.is_included_column = 0
and s.name='my_schema_name'
and o.name='my_table_name'

See also:

How to get index column names of a table from DB2

How to get index column names of a table from MySQL

How to get index column names of a table from PostgreSQL

How to get index column names of a table from SQLite

How to get index column names of a table from Oracle

Some SQL Server tools you can try: https://www.withdata.com/sql-server/