Tôi đã đọc sử dụng này-the-index-luke.com để giải thích chi tiết về cách các chỉ mục hoạt động. Một trong những điều mà người này đã lặp lại rằng thứ tự của các chỉ mục rất quan trọng và để làm cho truy vấn nhanh, các cột mệnh đề where phải giống như trong chỉ mục. Hôm nay, tôi chỉ chứng thực lý thuyết này và tạo một bảng (id int, name nvarchar (100)) trên SQL Server 2008. Tôi đã chèn khoảng 5000 hàng vào đó và tạo một chỉ mục
create index abc on test (name, id )
và sa thải truy vấn
select ID, name
from test
where ID = 10
and name = '10'
Tôi đã mong đợi một lần quét toàn bộ bảng được theo sau bởi một lựa chọn trong kế hoạch truy vấn nhưng điều ngạc nhiên là đầu ra của kế hoạch là một quét chỉ mục được chọn bởi chọn.

Vì vậy, câu hỏi của tôi là thứ tự các cột trong mệnh đề Where quan trọng hay SQL Server sắp xếp lại chúng theo định nghĩa chỉ mục?
Cảm ơn !!