我有一个名为Orders Like Table的表:
OrderItemID CustomerIDNumber OrderProcessed
1 9212060068089 False
2 6412180017080 False
3 9212060068089 False
4 5508245127003 False
5 9212060068089 False
Run Code Online (Sandbox Code Playgroud)
我想做的事情,我似乎真的很难得到正确的,是选择订单处理错误的所有唯一客户ID号.
现在这很简单,通过使用DISTINCT,但我正在努力的TRICKY PART,是我希望客户ID号仍然按订单商品ID维护订单.所以示例输出应该是:
CustomerIDNumber OrderProcessed
9212060068089 False
6412180017080 False
5508245127003 False
Run Code Online (Sandbox Code Playgroud)
请注意:处理顺序中的所有值都在这里错误,显而易见地在我的表中,对于订单处理将有一些真正的价值.
这是我目前得到的错误输出:
CustomerIDNumber OrderProcessed
5508245127003 False
6412180017080 False
9212060068089 False
Run Code Online (Sandbox Code Playgroud)
可以看出,它是按升序对客户ID号进行排序,这不是我想要的.
小智 5
分组和订购怎么样?
SELECT CustomerIDNumber, max(OrderProcessed)
FROM dbo.Orders
WHERE OrderProcessed = 'False'--or however you're implementing your boolean here
GROUP BY CustomerIDNUmber
ORDER BY min(OrderItemID)
Run Code Online (Sandbox Code Playgroud)