我正在尝试在SQL Server(2005 express)中编写一个简单的查询。目的是仅在现在和7天之前选择数据。我似乎无法在这个例子中使用GETDATE函数...任何想法?
** PS - 列中的日期时间在EPOCH中,所以我相信问题可能源于此处的数据类型......
Select * From TB_Data
where TB_Data.nDate <= GETDATE()-7)
答案 0 :(得分:3)
在GETDATE()函数之前添加括号将起作用。
Select * From TB_Data
where TB_Data.nDate <= (GETDATE() - 7)
使用EPOCH,您需要在比较之前转换日期:
DATEADD(s, TB_Data.nDate, '19700101')
所以完整的查询是:
Select * From TB_Data
where DATEADD(s, TB_Data.nDate, '19700101') <= (GETDATE() - 7)