SQL在24小时内完成

时间:2012-01-20 16:05:58

标签: sql datetime sql-server-2008-r2

  

可能重复:
  SQL Select within 24 hours?

我使用常规SQL来尝试运行查询。这是我的表格的样子:

Products
-----------------
Product ID  
Date 
Weight

日期作为日期时间输入数据库。

我希望能够只选择Product.Date在过去24小时内的商品。我已经尝试了一段时间了,这就是我得到的:

Select Products.Date
FROM Products
WHERE Products.Date < DATEADD(d,-1,CURRENT_TIMESTAMP)

由于某些原因这不起作用,我得到以下产品日期:

2011-01-18 00:00:00.000
2010-01-20 14:23:00.000
2011-01-20 04:05:00.000

5 个答案:

答案 0 :(得分:5)

你真的想要>代替<吗?

答案 1 :(得分:2)

根据我对其他帖子的评论,如果你只想要前24小时(因此不包括未来日期),那么试试这个:

SELECT Products.Date
FROM   Products
WHERE  Products.Date BETWEEN DATEADD(d,-1,CURRENT_TIMESTAMP) AND CURRENT_TIMESTAMP

答案 2 :(得分:1)

日期是2011年,当前年份是2012年:)

您还想使用&gt;

Select *
FROM Products
WHERE Products.Date > DATEADD(d,-1,CURRENT_TIMESTAMP)

答案 3 :(得分:0)

尝试:

Select [Product ID]
FROM Products
WHERE [Date] > DATEADD(d,-1,CURRENT_TIMESTAMP)

答案 4 :(得分:0)

Select Products.Date
FROM Products
WHERE Products.Date BETWEEN DATEADD(d,-1,CURRENT_TIMESTAMP) AND CURRENT_TIMESTAMP;