这是我的示例表
Col1 Col2
A 1
B 1
A 1
B 2
C 3
我希望能够选择不同的记录,其中所有行在 Col1 和 Col2 中都具有相同的值。所以我的答案应该是
Col1 Col2
A 1
C 3
我试过了
SELECT Col1, Col2 FROM Table GROUP BY Col1, Col2
这给了我
Col1 Col2
A 1
B 1
B 2
C 3
这不是我要找的结果。任何提示将不胜感激。
最佳答案
试试这个:
SELECT col1, MAX(col2) aCol2 FROM t
GROUP BY col1
HAVING COUNT(DISTINCT col2) = 1
输出:
| COL1 | ACOL2 |
|------|-------|
| A | 1 |
| C | 3 |
fiddle here 。
基本上,这确保
col2
的不同值的数量对于给定的 col1
是唯一的。关于sql - 选择所有行在两列中具有相同值的记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19698224/