Mysql 获取字段where";“存在”;两排
假设我有以下数据结构:Mysql 获取字段where";“存在”;两排,mysql,Mysql,假设我有以下数据结构: field1 | field2 ---------------+-------- something | 2 something | 1 anotherone | 2 anotheranothe | 1 我想将所有field1按存在field2的“x”和“y”进行分组 如果“x”等于1,“y”等于2,那么查询结果应该是“某物”,因为另一个只有“2”,另一个只有“1”某物是唯一有2和1的 你知道怎么做吗?我试过使用distin
field1 | field2
---------------+--------
something | 2
something | 1
anotherone | 2
anotheranothe | 1
我想将所有field1
按存在field2
的“x”和“y”进行分组
如果“x”等于1,“y”等于2,那么查询结果应该是“某物”,因为另一个只有“2”,另一个只有“1”某物是唯一有2和1的
你知道怎么做吗?我试过使用
distinct
等工具,但失败了我想您正在寻找这样的查询:
select field1
from table t
group by field1
having sum(field2 = 1) > 0 and
sum(field2 = 2) > 0;
这是“集合中的集合”子查询的一个示例。通常使用聚合和
having
子句最灵活地解决这些问题。having
子句中的每个条件检查其中一个值。>0
确保它在那里。@wumm感谢您帮助我了解问题的格式。我很想了解,如果问题明确,为什么会投反对票;)哪里在(…)组中,由。。。HAVING COUNT(*)=…该问题可能被否决,因为格式不好,而且您还没有显示您尝试过的任何研究或代码。@草莓,请您回答而不是评论,这样我就可以给您点Z了!?:“”()@草莓。我懂了。我错发了有。