Tôi có một bảng có tên là Quy trình làm việc. Nó có 37M hàng trong đó. Có một khóa chính trên cột ID (int) cộng với một cột bổ sung. Cột ID là cột đầu tiên trong chỉ mục.Tại sao một chỉ mục cụ thể không được sử dụng trong truy vấn?
Nếu tôi thực hiện các truy vấn sau đây, PK không được sử dụng (trừ khi tôi sử dụng một gợi ý index)
Select Distinct(SubID) From Workflow Where ID >= @LastSeenWorkflowID
Nếu tôi thực hiện truy vấn này để thay thế, PK được sử dụng
Select Distinct(SubID) From Workflow Where ID >= 786400000
tôi nghi ngờ vấn đề là sử dụng giá trị tham số trong truy vấn (mà tôi phải làm). Tôi thực sự không muốn sử dụng gợi ý chỉ mục. Có một cách giải quyết cho điều này?
Phiên bản nào của SQL Server? –
Đây có phải là chỉ số nonclustered không? Có một chỉ số nhóm? – JNK
@JNK - SQL Server 2008 và PK là chỉ mục nhóm –