Первый не может использовать индекс, потому что LastChangeDate
является аргументом функции.Единственная функция (насколько я знаю) в SQL Server, которая не запрещает индекс, - это преобразование в дату.
Вторая может использовать или не использовать индекс.Если у вас есть кластерный индекс на LastChangeDate
, то он должен.Тем не менее, запрос, по-видимому, не очень избирателен - это означает, что он выбирает значительную часть всех строк.В таких случаях оптимизатор базы данных может отказаться от индекса и выполнить полное сканирование таблицы.