gpt4 book ai didi

mysql - 查找表中的不一致

转载 作者:太空宇宙 更新时间:2023-11-03 11:57:14 26 4
gpt4 key购买 nike

假设在经过几次 SELECTJOIN 之后的某个时刻,我得到以下结果:

  Col1   Col2
+------+------+
| 1 | 2 |
| 1 | 3 |
| 4 | 5 |
| 4 | 6 |
| 5 | 6 |
| 6 | 7 |
+------+------+

现在我想找到“不一致”,即显示在 Col1 中具有相同值但在 Col2 中具有不同值的行。如果在 Col1 中只出现一次某个值,那么我根本不想显示它。

我尝试过的:

select Col1, Col2
from Table1
group by Col1
having (count(*) > 1)

返回

  Col1   Col2
+------+------+
| 1 | 2 |
| 4 | 5 |
+------+------+

预期结果:

  Col1   Col2
+------+------+
| 1 | 2 |
| 1 | 3 |
| 4 | 5 |
| 4 | 6 |
+------+------+

最佳答案

select t1.* from  
(select col1,count(*)
from table1
group by col1
having count(*) > 1) t2
join table1 t1 on t1.c1 = t2.c1

找到大于 1 的计数后,您应该使用外部查询。

SQL fiddle :http://sqlfiddle.com/#!9/211a9e/6

关于mysql - 查找表中的不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31724297/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com