La sugerencia de índice solo está disponible para servidores de bases de datos de Microsoft Dynamics. Para SQL Server tradicional, los filtros que defina en su cláusula 'Dónde' deberían persuadir al motor para que use cualquier índice relevante ... Siempre que el plan de ejecución del motor pueda identificar eficientemente cómo leer la información (ya sea un escaneo de tabla completo o un escaneo indexado ) - debe comparar los dos antes de ejecutar la declaración propiamente dicha, como parte de su optimizador de rendimiento integrado.
Sin embargo, puede forzar al optimizador a escanear usando algo como
Select *
From [yourtable] With (Index(0))
Where ...
O buscar un índice en particular usando algo como
Select *
From [yourtable] With (Index(1))
Where ...
La decisión es tuya. Mire las propiedades del índice de la tabla en el panel de objetos para tener una idea de qué índice desea usar. Debe coincidir con su (s) filtro (s).
Para obtener mejores resultados, enumere primero los filtros que arrojarían la menor cantidad de resultados. No sé si estoy en lo cierto al decirlo, pero parece que los filtros de consulta son secuenciales; si obtiene la secuencia correcta, el optimizador no debería tener que hacerlo por usted comparando todas las combinaciones, o al menos no comenzar la comparación con las consultas más caras.