Twoje dwa zapytania nie są równoważne. datediff
wersja będzie zawierała wszystkie wartości od 01-Jan-2013
niezależnie od czasu, podczas gdy wersja między wersjami będzie zawierać tylko wiersze w dniu 01-Jan-2013
gdzie czas to 00:00:00
.
Jeśli sprawdzisz zakres i nie wykonasz żadnych obliczeń w kolumnie, Twoje zapytanie będzie mogło użyć indeksu w Something_Date
i jednocześnie uwzględnij wszystkie wartości od 01-Jan-2013
niezależnie od pory.
where
SIH.[Something_Date] >= '19700101' and
SIH.[Something_Date] < '20130102'