ROW - NAME -  BRAND
____________________
1   - John -  Ford
2   - John -  BMW
3   - John -  Merc
4   - Mary -  Ford
5   - Mary -  VW
6   - James - Ford
7   - James - Jeep
8   - James - Lexus
9   - Susan - Jeep
10  - Susan - Lexus

如何在A列中找到在B列中没有特定值的值。
A列,比如说名称,不是唯一的,A中有多个值相同的行(因为同一个人可以有多辆车)
B栏,比如说汽车品牌,显示了一个人在A栏中拥有的汽车品牌。总共只有5个品牌,理想情况下每个人都应该拥有其中一个品牌——福特。
我该如何找出那些拥有其他车型但却错过了福特的人的所有唯一名字?在上面的例子中,我想找到苏珊。

最佳答案

您可以使用聚合:

select name
from t
group by name
having sum(brand = 'Ford') = 0;

having子句计算与Ford匹配的行数。= 0表示没有这样的行。

关于mysql - 查找没有值B的值A的计数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37451387/

10-09 23:25