sql - SQL Select:匹配id的行是否都具有相同的列值
问题描述
我有一张这样的桌子
sub_id reference
1 A
1 A
1 A
1 A
1 A
1 A
1 C
2 B
2 B
3 D
3 D
我想确保每个组中的所有参考都具有相同的参考。意思是,例如,所有引用:
组1
应该是A
组2
应该是B
组3
应该是D
如果不是,那么我想返回一个 sub_id 列表。所以对于上面的表格,我的结果是:1
理想情况下,在这些条件下,参考将位于一个单独的表中,其中 sub_id 为 PK,但我需要先修复大量数据集,然后才能继续重组数据库。
解决方案
您可以使用以下方法:
select t.sub_id
from YourTable t
group by t.sub_id
having max(t.reference) <> min(t.reference)
改变YourTable
以适应。
推荐阅读
- amazon-web-services - AWS S3 存储桶版本控制在存储桶级别或目录级别而不是对象级别
- regex - 正则表达式截断 nginx 上的字符串
- html - 如何“清除”弹性框项目?
- ibm-doors - 如何访问隐藏的 DXL 变量/函数?
- julia - 在 Julia 中找不到 LinAlg 包
- r - Negative length vectors are not allowed in distance function
- django - Django,删除记录有问题吗?
- java - 回到开始而不杀死Java中的程序
- versioning - Nexus 中的存档工件
- c# - WPF - 在启动进度条显示完成之前加载主窗口,完成后启动窗口不会关闭