Czy istnieje jakaś twarda i szybka reguła, która decyduje o tym, w których kolumnach i jakiej kolejności należy je umieścić Uwzględnione w indeksie nieklastrowanym. Właśnie czytałem ten post https://stackoverflow.com/questions/1307990/why-use-the-include-clause-when-creating-an-index i znalazłem to dla następującego zapytania:
SELECT EmployeeID, DepartmentID, LastName
FROM Employee
WHERE DepartmentID = 5
Plakat sugeruje, aby zrobić indeks w ten sposób:
CREATE NONCLUSTERED INDEX NC_EmpDep
ON Employee(EmployeeID, DepartmentID)
INCLUDE (Lastname)
oto moje pytanie, dlaczego nie możemy zrobić takiego indeksu
CREATE NONCLUSTERED INDEX NC_EmpDep
ON Employee( EmployeeID, DepartmentID, LastName)
lub
CREATE NONCLUSTERED INDEX NC_EmpDep
ON Employee( EmployeeID, LastName)
INCLUDE (DepartmentID)
i co powoduje, że plakat decyduje się na uwzględnienie kolumny LastName. Dlaczego nie inne kolumny? i jak zdecydować, w jakiej kolejności powinniśmy przechowywać tam kolumny?