Je le tableau suivant dans SQL Server 2008:requête SQL n'utilise pas l'index disponible (SQL Server 2008)
Session
(
sessionid varchar(10)
startdate dateteime
enddate dateteime
--rest of the fields go here
)
Je les deux indices nonclustered suivants créé:
Inddex1: SessionID,startdate,enddate
Inddex2: startdate,enddate
je la requête suivante
select *
from session
where startdate>[email protected] and enddate <[email protected]
lors de l'exécution de cette requête, ces deux idex ne sont pas utilisés. Le plan de requête affiche uniquement l'analyse de la table.
Maintenant, j'ai essayé de supprimer l'index1 et exécuté le même SP Still index2 n'est pas utilisé.
Des indices sur la façon de rendre le SP à utiliser index2? (Aucune utilisation d'index forcé s'il vous plaît.)
+ 1 - les petites tables m'ont longtemps jetée parce qu'elles ont refusé d'utiliser les index dans de nombreuses circonstances (pour de bonnes raisons, je suppose) –