我是编程新手,所以请保持友好。 我什至不知道从哪里开始这个问题...
我正在尝试编写一个sql视图,以仅显示已完成的订单。 我有一张看起来像这样的桌子
结果应显示订单1和3,因为它们都已完成。订单2不应显示,因为其中一项仍为“ F”,无论数量多少,我只想显示一次订单。
有人可以指出正确的方向吗?
谢谢 软件-SQL Server 2005
答案 0 :(得分:0)
您可以将GROUP BY
与HAVING
一起使用,以达到所需的条件
SELECT Order_nbr
FROM yourtable
GROUP BY Order_nbr
HAVING MIN (completed) = 'P'
对于已完成的订单,completed
列将全部为'P',因此MIN(completed)
将为'P'
对于未完成的订单,completed
列将至少包含一个F
,因此MIN(completed)
将为您提供F