SQL查询语句结构

Cur*_*ity 3 sql sql-server

我有一个名为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)

Sql小提琴演示