orderid return id status
a a1 completed
b a2 rejected
c a3 initiated
d a4 rejected
d a5 completed
f a6 rejected
g a7 completed
a a1 completed
输出a a1 completed
我想要一个订单ID有超过1个返回ID的输出,并且两个状态都是'完成'。
你可以使用聚合,如果我理解正确的话:
select orderid, returnid, max(status)
from t
group by orderid, returnid
having count(*) >= 2 and
min(status) = max(status) and
max(status) = 'completed';
您使用了单词"both",这意味着只有两行,它们的状态都是'completed'
。
这是一个数据库<>小提琴(碰巧使用MySQL,但代码都是标准的SQL)。