Você pode crie um índice não clusterizado da seguinte maneira.
DECLARE @t TABLE (
PK INT IDENTITY(1, 1) PRIMARY KEY CLUSTERED,
Col1 INT,
Col2 INT,
UNIQUE (Col1, Col2, PK))
Se a intenção é que
Col1, Col2
são únicos, remova PK
da lista de colunas. Embora pareça pelo valor de face como se isso tivesse adicionado uma coluna adicional em (
PK
) a estrutura do índice será a mesma que criar um índice não exclusivo apenas em Col1, Col2
em um #temp
tabela. CREATE TABLE #T (
PK INT IDENTITY(1, 1) PRIMARY KEY CLUSTERED,
Col1 INT,
Col2 INT)
/*PK added in to end of key anyway*/
CREATE NONCLUSTERED INDEX ix ON #T(Col1, Col2)
para um índice não clusterizado não exclusivo, o SQL Server sempre adiciona a chave CI à chave NCI implicitamente de qualquer maneira. Isso apenas mostra isso explicitamente.
Veja Kalen Delaney Mais sobre Chaves de índice não clusterizadas