我有这个简单的订单表
Orders
-------------
OrderID
OrderDesc
OrderDate
OrderStatus
OrderAmount
在一个查询中的Sql server中,我如何获取每个Orderdate: - orderstatus = 1的订单总数, - orderstatus = 2的订单总数
由于
答案 0 :(得分:1)
未经测试或其他任何事情,但您是否尝试过从您的群组中选择计数?
类似的东西:
SELECT Count(OrderStatus) As Amount, OrderDate
FROM Orders
GROUP BY OrderStatus, OrderDate
HAVING OrderStatus = 2 OR OrderStatus = 1
不确定语法,或者在SQL Server中使用HAVING。
答案 1 :(得分:1)
SELECT OrderDate,
Sum(Case When OrderStatus = 1 Then 1 Else 0 End) AS TotalOrderStatusOne,
Sum(Case When OrderStatus = 2 Then 1 Else 0 End) AS TotalOrderStatusTwo
FRMO Orders
GROUP BY OrderDate
如果你想要每个OrderDate一行,会给你你想要的东西。如果你有太多的OrderStatus值,那就太乱了。
答案 2 :(得分:0)
抱歉,我正在寻找类似的东西:
OrderStatus的OrderDate记录= OrderStatus = 2的记录 1-Aug-09 10 20 2-Aug-09 20 10
谢谢