我有一个包含名称的表和一个位列,指示名称是删除 (1) 还是未删除 (0)。我正在尝试编写一个查询,返回所有已删除的名称,除非该名称也未被删除(一个名称可能在表中出现多次)。希望这是有道理的!
这是一些示例数据:
+------+-------+
|Name |Deleted|
+------+-------+
|Bob | 1 |
+------+-------+
|Joe | 1 |
+------+-------+
|Joe | 0 |
+------+-------+
|Bob | 1 |
+------+-------+
|Sam | 1 |
+------+-------+
所以结果将是 Bob
和 Sam
:
两个“Bob”条目都是“1”。
单个 Sam 条目为“1”。
Joe 不会出现在结果中,因为他既是“1”又是“0”。
感谢您的帮助!
最佳答案
一种方法使用聚合:
select name
from t
group by name
having min(deleted) = 1;
关于mysql - sql - 查询多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45224624/