Каков оптимальный способ сравнения дат на сервере Microsoft SQL?

У меня есть SQLdatetime поле в очень большой таблице. Это's проиндексированы и должны быть запрошены.

Проблема в том, что SQL всегда хранит компонент времени (даже если онs всегда полночь), но поиски идут на день, а не на время.

declare @dateVar datetime = '2013-03-11;

select t.[DateColumn]
from MyTable t
where t.[DateColumn] = dateVar;

Победил'ничего не вернуть, так какt.[DateColumn] всегда включает в себя компонент времени.

Мой вопрос: как лучше всего обойти это?

Кажется, есть две основные группы вариантов:

Создайте вторую переменную, используяdateadd и использоватьbetween ... and или же .>= ... and ...

Ответы на вопрос(4)

Ваш ответ на вопрос