Sql mydate+;GETUTCDATE()-GETDATE()将返回2015年mydate的结果,但不会返回2014年的结果

Sql mydate+;GETUTCDATE()-GETDATE()将返回2015年mydate的结果,但不会返回2014年的结果,sql,sql-server,Sql,Sql Server,我正在尝试获取行创建的结果

我正在尝试获取行创建的结果<'mydate+GETUTCDATE()-GETDATE()。 如果mydate在2015年重新发布,则结果将重新发布,但2014年不会。 请建议

提前感谢

rowsCreatedrowsCreated < DATEADD(hour, DATEDIFF(hour, GETDATE(), GETUTCDATE()), mydate)
无论mydate的日期/时间类型是什么,它都有效;但是,请注意,这并不适用于每个时区(例如,亚洲/德黑兰、澳大利亚/达尔文、澳大利亚/Eucla),因为它返回的是整数小时数

为了安全起见,您可能需要:

rowsCreated < DATEADD(minute, DATEDIFF(minute, GETDATE(), GETUTCDATE()), mydate)
rowsCreated
有关创建的
行和
mydate
值中数据的更多信息。请注意,由于DST的原因,这通常是在UTC和本地时间之间转换的一种不好的方法:
GETUTCDATE()-GETDATE()
的结果取决于DST当前是否有效,不知道它是否在
mydate
生效。