SQL Server选择datetimeoffset早于1小时的位置

SQL Server选择datetimeoffset早于1小时的位置,sql,sql-server,Sql,Sql Server,我知道这应该很容易,我在mySQL和Postgresql中做这件事没有问题,但我正在与SQL Server斗争。我想选择datetimeoffset字段超过一小时的行 select * from table where mydatetime < getdate() - 1 hour 从mydatetime

我知道这应该很容易,我在mySQL和Postgresql中做这件事没有问题,但我正在与SQL Server斗争。我想选择datetimeoffset字段超过一小时的行

select * from table where mydatetime < getdate() - 1 hour
从mydatetime
我尝试了dateadd和datediff,但无法正确执行。

从mydatetimeselect * from table where mydatetime < dateadd(hh, -1, getdate())
其中mydatetime

有关详细信息,请参见:

如果不想使用dateadd(),可以使用当前时间戳-#秒

从'table'中选择*,其中'mydatetime'<(当前时间戳-3600)

请小心,因为mydatetime是一个datetimeoffset,可能与服务器不在同一时区。如果您使用SYSDATETIMEOFFSET(或者可选地,使用GETUTCDATE()并在mydatetime上使用SWITCHOFFSET将其转换为UTC),您将对苹果进行比较。
WHERE mydatetime < DATEADD(hour, -1, SYSDATETIMEOFFSET())
    SELECT * FROM `table` where `mydatetime` < (CURRENT_TIMESTAMP - 3600)