SQL比较日期时间和今天

4

我希望有人能够翻译我的摘要查询。

我想从TABLE中选择*,其中([MYDATETIMEROW] <(TODAY - 3天))。

我需要转换、强制转换或使用datepart或其他什么吗?.. 我很困惑。

有简单的规则吗?我不会在linq中遇到问题,但是简单的sql我只学了一点点。

谢谢和最好的问候。

2个回答

8
简单来说:
Select * from Table where MyDateTimeRow < dateadd(dd,-3,getdate())

但是使用getdate()函数将提供日期和时间,经验表明这不太可能正好符合您的要求 - 您可能希望剥离时间并仅考虑日期部分。

Select * From Table where MyDateTimeRow < dateadd(dd, datediff(dd, 0, getdate()) - 3, 0)

2

您希望使用DateAdd函数来操作日期,使用GetDate函数获取当前日期:

SELECT * FROM MyTable WHERE [MyDateTimeRow] < DateAdd(dd, -3, GetDate())

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接