如何从(非不同)column2中为每个不同的column1值检索一条记录?

时间:2014-02-18 09:20:08

标签: sql oracle11g distinct

RDBMS - Oracle 11g。

问题: 我有这样一张桌子 -

column1   column2
A         111
A         222
A         333
B         444
C         555
C         666

我想编写一个查询,只为每个不同的column1值选取一条记录。 输出应该是这样的:

A         111
B         444
C         555

我并不担心相应的column2中的哪个值被拾取。只有约束是我只想为每个不同的column1值获取一个单一记录。

如果不使用程序,我无法想到这样做的方法。这只是sql查询(没有函数/过程)吗?感谢。

3 个答案:

答案 0 :(得分:1)

不确定

SELECT column1, MIN(column2)
  FROM your_table
 GROUP BY column1

由于您不关心获得的column2值,您还可以使用MAX或许多其他聚合函数,而不是MIN

答案 1 :(得分:1)

如果你不在乎,请将column2设为MIN

  SELECT column1, 
         MIN(column2) 
    FROM table 
GROUP BY column1;

答案 2 :(得分:1)

Select column1,MIN(column2)
From tableName
group by column1

SQL Fiddle Demo