Esiste una regola rigida e rapida per decidere quali colonne e in quale ordine devono essere inserite Incluso nell'indice non cluster. Stavo solo leggendo questo post https://stackoverflow.com/questions/1307990/why-use-the-include-clause-when-creating-an-index e l'ho trovato per la seguente query:
SELECT EmployeeID, DepartmentID, LastName
FROM Employee
WHERE DepartmentID = 5
Il poster ha suggerito di creare un indice in questo modo:
CREATE NONCLUSTERED INDEX NC_EmpDep
ON Employee(EmployeeID, DepartmentID)
INCLUDE (Lastname)
ecco la mia domanda: perché non possiamo fare un indice come questo
CREATE NONCLUSTERED INDEX NC_EmpDep
ON Employee( EmployeeID, DepartmentID, LastName)
o
CREATE NONCLUSTERED INDEX NC_EmpDep
ON Employee( EmployeeID, LastName)
INCLUDE (DepartmentID)
e quale cosa induce il poster a decidere di mantenere inclusa la colonna LastName. Perché non altre colonne? e come decidere in quale ordine dovremmo tenere le colonne lì?