Có quy tắc cứng và nhanh nào để quyết định cột nào và theo thứ tự nào sẽ được đưa vào Bao gồm trong chỉ mục không được nhóm. Tôi vừa đọc bài đăng này https://stackoverflow.com/questions/1307990/why-use-the-include-clause-when-creating-an-index và tôi thấy rằng cho truy vấn sau:
SELECT EmployeeID, DepartmentID, LastName
FROM Employee
WHERE DepartmentID = 5
Các poster đề nghị tạo chỉ mục như thế này:
CREATE NONCLUSTERED INDEX NC_EmpDep
ON Employee(EmployeeID, DepartmentID)
INCLUDE (Lastname)
đây là câu hỏi của tôi tại sao chúng ta không thể tạo ra chỉ mục như thế này
CREATE NONCLUSTERED INDEX NC_EmpDep
ON Employee( EmployeeID, DepartmentID, LastName)
hoặc là
CREATE NONCLUSTERED INDEX NC_EmpDep
ON Employee( EmployeeID, LastName)
INCLUDE (DepartmentID)
và điều gì dẫn đến người đăng quyết định giữ lại cột LastName. Tại sao không phải là cột khác? và làm thế nào để quyết định theo thứ tự chúng ta nên giữ các cột ở đó?