我刚刚创建的列的条件

时间:2016-03-15 07:39:09

标签: sql postgresql

我无法解决sql查询的问题。

我有一个包含这样的内容的表:

+------+------+------+
| Col1 | Col2 | Col3 |
+------+------+------+
| A1   | B1   | C    |
| A2   | B2   | D    |
| A3   | B3   | E    |
| A3   | B3   | D    |
+------+------+------+

如果Col1和Col2具有相同的值,则只想选择具有唯一Col3的行。

所以结果应该是:

+------+------+------+
| Col1 | Col2 | Col3 |
+------+------+------+
| A1   | B1   | C    |
| A2   | B2   | D    |
+------+------+------+

因为第3行和第4行具有类似的Col1和Col2,但具有不同的Col3。

我需要在查询期间创建的新列上添加条件,我无法管理如何执行此操作。

1 个答案:

答案 0 :(得分:2)

如果我理解正确的话,这是一个简单的小组:

select col1, col2, min(col3) as col3
from the_table
group by col1, col2
having count(distinct col3) = 1