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

Sql 如何为每个不同的column1值从(非不同的)column2中仅检索一条记录?,sql,oracle11g,distinct,Sql,Oracle11g,Distinct,RDBMS-Oracle11g 问题: 我有一张这样的桌子- column1 column2 A 111 A 222 A 333 B 444 C 555 C 666 我想编写一个查询,为每个不同的column1值只提取一条记录。 输出应如下所示: A 111 B 444 C 555 我并不担心相应的第2列中的哪个值会被拾取。唯一的限制是我只希望为

RDBMS-Oracle11g

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

column1   column2
A         111
A         222
A         333
B         444
C         555
C         666
我想编写一个查询,为每个不同的column1值只提取一条记录。 输出应如下所示:

A         111
B         444
C         555
我并不担心相应的第2列中的哪个值会被拾取。唯一的限制是我只希望为每个不同的column1值提取一条记录

我想不出一种不使用程序的方法来实现这一点。仅使用sql查询(无函数/过程)是否可以实现这一点?谢谢。

当然可以

SELECT column1, MIN(column2)
  FROM your_table
 GROUP BY column1
由于您不关心得到哪个
column2
值,因此也可以使用
MAX
或许多其他聚合函数,而不是
MIN

当然

SELECT column1, MIN(column2)
  FROM your_table
 GROUP BY column1
由于您不关心得到哪个
column2
值,因此也可以使用
MAX
或许多其他聚合函数,而不是
MIN

当然

SELECT column1, MIN(column2)
  FROM your_table
 GROUP BY column1
由于您不关心得到哪个
column2
值,因此也可以使用
MAX
或许多其他聚合函数,而不是
MIN

当然

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

由于您不关心得到哪个
column2
值,因此也可以使用
MAX
或许多其他聚合函数,而不是
MIN

如果您不关心,则将column2设为MIN

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

如果你不在乎,那就让第二栏最短吧

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

如果你不在乎,那就让第二栏最短吧

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

如果你不在乎,那就让第二栏最短吧

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


更好地表示表格:(col1,col2)=(A,111),(A,222),(A,333),(B,444),(C,555),(C,666)。
从表格组中按列1选择列1,最小值(列2)为什么不从表中选择不同的column1,column2?更好地表示表:(col1,col2)=(A,111),(A,222),(A,333),(B,444),(C,555),(C,666)。<代码>按column1从表组中选择column1,min(column2)为什么不从表中选择不同的column1,column2?更好地表示表:(col1,col2)=(A,111),(A,222),(A,333),(B,444),(C,555),(C,666)。<代码>按column1从表组中选择column1,min(column2)为什么不从表中选择不同的column1,column2?更好地表示表:(col1,col2)=(A,111),(A,222),(A,333),(B,444),(C,555),(C,666)。<代码>按column1从表组中选择column1,min(column2)为什么不从表中选择不同的列1、列2?