来自Oracle数据库的SQL查询

4

我在Oracle数据库表demo中有两列(column1, column2)。我想选择拥有不同column2的相同column1。

SQL> select * from demo;

column1 | column2
--------|--------
A       | 10           
A       | 20
A       | 30
A       | 30

我希望使用count(*)得到以下输出:
column1 | column2
--------|--------
A       | 10           
A       | 20

我该怎么做?非常感谢您的帮助。


2
你的意思是如果column1中的一个值在column2中有不同的值,对吗?那么我猜想你的select *语句中的第三行应该是除了A以外的其他值? - jb10210
@jb10210,你说得很接近,但是“other than A means”是什么意思?我在我的数据库中有这种记录模式。 - saroj
2
@saroj:那你为什么要排除第三行呢? - user359040
@MarkBannister的评论非常好,因为我必须查找具有不同值的相同column1和column2中的行,在第三行中,虽然存在相同的A,但也出现了两次相同的30,我已经更新了我的问题。 - saroj
@saroj:非常清晰,谢谢 - 我已经相应地更新了我的答案。 - user359040
显示剩余5条评论
1个回答

2

尝试:

select column1, column2
from myTable 
group by column1, column2
having count(*) = 1

为什么这个查询会导致所需的输出? - Rob van Wijk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接