Просто чтобы завершить другие ответы, у вас есть хорошая статья на Как искать значения даты и времени с использованием SQL Server 2000
Напоминает, как хранятся значения даты / времени (два типа данных даты / времени: datetime и smalldatetime)
Он также указывает, что Datetime и smalldatetime похожи на типы данных с плавающей запятой, float и real, поскольку они являются приблизительными числами. Это означает, что значение, полученное с SQL Server, может отличаться от значения, которое было изначально сохранено.
Кроме того, он предупреждает разработчиков баз данных, которые не всегда используют столбцы даты / времени надлежащим образом. Во время разработки базы данных каждый столбец даты / времени должен быть идентифицирован относительно того, будут ли в ней храниться даты и время, только даты или только время.
Закрывается с практическими запросами по данным / времени .
У вас также есть хорошее описание DATEADD и DATEDIFF здесь .