非クラスター化インデックスは次のように作成できます。
DECLARE @t TABLE (
PK INT IDENTITY(1, 1) PRIMARY KEY CLUSTERED,
Col1 INT,
Col2 INT,
UNIQUE (Col1, Col2, PK))
それ自体が一意であることが意図されている場合は、列リストからCol1, Col2
削除します。PK
一見すると ( ) 内に列が追加されたように見えますが、インデックスの構造は、テーブルPK
だけに非一意のインデックスを作成するのと同じになります。Col1, Col2
#temp
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)
一意ではない非クラスター化インデックスの場合、SQL Server は常に CI キーを暗黙的に NCI キーに追加します。これはそれを明示的に示しているだけです。
非クラスター化インデックス キーの詳細については、Kalen Delaney を参照してください。