Bạn có thể tạo một chỉ mục không phân cụm như sau.
DECLARE @t TABLE (
PK INT IDENTITY(1, 1) PRIMARY KEY CLUSTERED,
Col1 INT,
Col2 INT,
UNIQUE (Col1, Col2, PK))
Nếu mục đích là Col1, Col2
là duy nhất, sau đó xóa PK
từ danh sách cột.
Mặc dù nó xuất hiện ở mệnh giá như thể điều này đã thêm một cột bổ sung trong (PK
) cấu trúc chỉ mục sẽ giống như việc tạo chỉ mục không duy nhất chỉ trên Col1, Col2
trên #temp
bảng.
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)
cho một chỉ mục không phân cụm không duy nhất SQL Server luôn thêm khóa CI vào khóa NCI một cách ngầm định. Điều này chỉ hiển thị nó một cách rõ ràng.
Xem Kalen Delaney Thông tin thêm về Các phím lập chỉ mục không phân biệt