Сравните 2 даты в ЦМЛ без учета года - PullRequest
0 голосов
/ 01 февраля 2010

Хотелось бы узнать самый быстрый способ сравнения двух дат без учета года. (В одном из моих запросов это сравнение занимает 55 секунд)

На данный момент он попытался (без разницы во времени):

    where datepart(d,date1)=datepart(d,date2) and datepart(m,date1)=datepart(m,date2)

    where CAST(datepart(d,date1) as varchar)+ CAST(datepart(m,date1) as varchar) =CAST(datepart(d,date2) as varchar)+ CAST(datepart(m,date2) as varchar)

    where datepart(y,date1) =datepart(y,date2)

    where CAST(DAY(date1) as varchar)+ CAST(MONTH(date1) as varchar) =CAST(DAY(date2) as varchar)+ CAST(MONTH(date2) as varchar)

1 Ответ

0 голосов
/ 01 февраля 2010

Создайте вычисляемый столбец для каждой даты, которая является только датой и месяцем (возможно, числом, например, 3,5 на 5 марта), а затем индексируйте этот столбец.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...