我需要一个查询,该查询将返回不同的行,但不会返回任何具有重复水果且其中一行为“已批准”的行。注意:同名的水果总是最多有两个。
例如,理想的结果是:
到目前为止我所拥有的只是:
SELECT DISTINCT * FROM Food;
但这显然仍然返回包含水果“Apple”的行之一
最佳答案
您可以使用一些条件聚合来获得所需的结果集,例如
select fruit, min(status)
from demo
group by fruit
having sum(status = 'Approved') = 0
and sum(status = 'Bought') > 0
或者只是使用选择水果,“已购买”作为状态
关于mysql - 根据特定条件返回唯一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50495956/