我有一张表,它显示了物品交付的状态:
ID | ContractID | State
----------------------------------
1 | 125 | Created
2 | 125 | Activated
3 | 125 | PickupStarted
4 | 125 | PickedUp
5 | 125 | DeliveryStarted
6 | 125 | Delivered
7 | 126 | Created
8 | 126 | Activated
9 | 126 | PickupStarted
10 | 126 | PickedUp
11 | 126 | DeliveryStarted
12 | 126 | Delivered
13 | 127 | Created
14 | 127 | Activated
15 | 127 | PickupStarted
16 | 127 | PickedUp
我想创建一个sql查询,它只统计那些尚未传递的“constractd”(只统计那些当前状态已达到“pickedup”状态的)。在这种情况下,这将是'收缩'127。有没有一种方法可以实现这种类型的count()?
1条答案
按热度按时间3ks5zfa01#
你可以用
not exists
:或者,如果你特别想
PickedUp
作为最后状态:两者是不同的。第二个是最后一个状态
PickedUp
. 第一个是没有达到“交付”状态的人。