处理 SmallDateTime 数据类型时的 DATEADD

DATEADD When Dealing with SmallDateTime Data Type

我想要完成的是 select 前一天创建的 table 中的所有记录 - 并且记录作为 table 存储在 table 中=24=] 所以它还包括创建记录的时间。

如果我在我的 WHERE 子句中使用 DATEADD 函数,我不会返回任何我知道不正确的记录。

Appt.CreatedDateTime = DATEADD(DAY, -1, GETDATE())

如何去除时间戳以找到前一天创建的所有记录?

谢谢,

这里有几个选项。您可以将列转换为 DATE,也可以进行一些日期计算。

where Appt.CreatedDateTime >= dateadd(day, datediff(day, 0, getdate()) - 1, 0) --beginning of yesterday
    and Appt.CreatedDateTime < dateadd(day, datediff(day, 0, getdate()), 0) --beginning of today

CAST(Appt.CreatedDateTime as DATE) = DATEADD(DAY, -1, GETDATE())