2012-02-02 51 views
3

我有成千上万的客户订单。 我只需要在下午5点之后所有订单的计数返回到第一个条目。 我该如何查询?基于时间的SQL计数

SELECT COUNT(OrderID) AS TotalOrders 
FROM Nop_Order 
WHERE (CreatedOn > '???') 
+0

这是SQL Server吗? – Yuck 2012-02-02 18:45:20

+0

您是否想要在特定日期的订单,例如今天?或者每天1700小时之后和午夜之前的任何订单? – HABO 2012-02-03 02:58:29

回答

5

你想使用DATEPART功能隔离只是日期的时间部分,并将其与17,这将是下午5:00在军用时间...

SELECT COUNT(OrderID) AS TotalOrders 
FROM Nop_Order 
WHERE (DATEPART(HOUR, CreatedOn) >= 17) 
+1

这将包括订单在下午5点正好 – deltree 2012-02-02 18:46:34

+0

打我也是..我在我看到你之前发布我的 – Standage 2012-02-02 18:47:52

+0

真棒,非常感谢。 – 2012-02-02 18:48:06

1
SELECT COUNT(OrderID) AS TotalOrders 
from Nop_Order where datepart(hh, CreatedOn) > 17