我在表A中有以下数据。
team | name | status | start_date | end_date
----------------------------------------------
A Ann Active 2016-01-01 2016-06-01
A Linh Active 2016-01-01 2016-06-01
A John Hold 2016-01-01 2016-06-01
A Soph Closed 2016-01-01 2016-06-01
我可以select from table A where status='Active'
来获取活跃会员。
现在,要求已更改为如果至少有一个“Active”状态成员,我应该在查询中查找“Active”和“Hold”状态成员。
如果没有“活动”状态成员,那么我不应该寻找“保持”状态成员。
我应该如何在一个SQL中编写?
答案 0 :(得分:1)
据我了解您的要求,此查询正在运行:
SELECT *
FROM tableA
WHERE status IN ('Active', 'Hold')
AND EXISTS (SELECT true FROM tableA WHERE status = 'Active');
希望得到这个帮助。