2011-06-05 64 views

回答

1

您可以纳入这样的事情到您的WHERE条款:(即订购日期比今天减去14天更近)

WHERE OrderDate >= DATEADD(day,-14,GetDate()) 

[我没有SQL Server访问这里所以我不能检查它 - 但它可能工作:)]

编辑:根据确切的数据类型的OrderDate,我不知道如果你有例如一个订单在两周前的一天的一半,所以你可能想检查会发生什么。

1

marnir答案是做到这一点,但这是>今天不包括订购日期另一种选择:

select * from Order 
where [OrderDate] 
BETWEEN DATEADD(dd, -14, GetDate()) AND GetDate() 
1

这里是检索放在最后2 weeks订单的另一种可能的方式。假定OrderDate是数据类型为datetime的列。屏幕截图#在类似于您的要求的名为dbo.[Order]的表中显示示例数据,并针对该表数据输出以下查询。此查询在SQL Server 2008 R2中进行了测试,但也与其他SQL Server版本兼容。

SELECT Id 
    , CustomerId 
    , OrderDate 
    , Quantity 
    , Price 
FROM dbo.[Order] 
WHERE DATEDIFF(WEEK, OrderDate, GETDATE()) <= 2 

希望有帮助。

屏幕截图

1