Да, у вас может быть только один кластеризованный индекс для таблицы - данные физически упорядочены по этому индексу, поэтому вы не можете иметь более одного.
Однако я бы не советовал использовать составной кластерный индекс,Зачем?Поскольку кластеризованный индекс всегда должен быть:
- настолько малым, насколько это возможно - INT с 4 байтами идеален
- стабильный - никогда не меняйте, поэтому у вас не будет повторяющихся обновлений через все вашииндексы
- уникальны - в противном случае SQL Server придется "унифицировать" ваши записи с помощью искусственных 4-байтовых значений
- оптимально будет: когда-либо увеличиваться
INT IDENTITYидеально подходит в качестве кластеризованного индекса - я бы посоветовал вам сохранить его таким образом.
Столбец кластеризованного индекса (или набор столбцов) также добавляется к каждой записи каждого некластеризованного индекса в той же таблице.- поэтому, если вы сделаете свой кластеризованный индекс большим, 20, 50 байт или более, вы начнете тратить много места - на диске и в памяти вашего сервера, что в целом снижает производительность вашей системы.
Читать всео кластеризованных индексах и о том, какими они должны быть, чтобы быть хорошими кластерными индексами здесь: