Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie kann ich eine Abfrage zwingen, keinen Index für eine bestimmte Tabelle zu verwenden?

SELECT *
FROM MyTable WITH (INDEX(0))
WHERE MyIndexedColumn = 0

Die Abfrage würde normalerweise den Index auf MyIndexedColumn verwenden, aber aufgrund des Tabellenhinweises wird stattdessen tablescan.

verwendet
SELECT *
FROM MyTable WITH (INDEX(IndexName))
WHERE MyIndexedColumn = 0

Die Abfrage würde normalerweise den Index auf MyIndexedColumn verwenden, aber aufgrund des Tabellenhinweises verwendet sie stattdessen den Index mit dem Namen IndexName.