假设我有以下数据结构:
field1 | field2
---------------+--------
something | 2
something | 1
anotherone | 2
anotheranothe | 1
我希望只要存在{#1}}" x"就会将所有field1
分组。和" y"。
如果" x"等于1和" y"等于2,那么查询的结果应该是"",因为另一个只有" 2"和另一个只有" 1"。 某事是唯一一个有2和1的人。
有关如何做到这一点的任何想法?我试过field2
但其他人失败了
答案 0 :(得分:1)
我认为您正在寻找这样的查询:
select field1
from table t
group by field1
having sum(field2 = 1) > 0 and
sum(field2 = 2) > 0;
这是“set-within-sets”子查询的示例。这些通常使用聚合和having
子句最灵活地解决。 having
子句中的每个条件都会检查其中一个值。 > 0
确保它在那里。