【问题标题】:a sql query from oracle database来自 oracle 数据库的 sql 查询
【发布时间】:2012-04-03 11:03:22
【问题描述】:

我的 oracle 数据库名为演示的表中有两列(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

我该怎么做?非常感谢任何帮助

【问题讨论】:

  • 您的意思是如果column1 中的值在column2 中具有不同的值,对吗?然后我假设您的select * 中的第三行应该不是 A 吗?
  • 您可以使用 COUNT 运算符以及 GROUP BY 和 HAVING 结构来做到这一点
  • @jb10210 你很接近但other than A means?我的数据库中有上述记录模式
  • @saroj:那为什么要排除第三行呢?
  • @AmitBhargava 你能稍微澄清一下吗?我的正确查询应该是什么?我写了几乎很多种sql查询,但没有结果

标签: sql database oracle


【解决方案1】:

试试:

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

【讨论】:

  • 为什么这个查询会导致想要的输出?
猜你喜欢
  • 2015-11-20
  • 1970-01-01
  • 2023-03-07
  • 2016-08-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多