SQL从select中获取唯一值

时间:2012-02-13 04:09:29

标签: sql oracle select

我试图通过sql从oracle中的表中获取唯一值。该表看起来像这样。

表:带有列名和值的ABC。

NAME Value
AA   10
B    40
CC   50
AA   70
DD   80
CC   90
EE   100
FF   120
GG   130
H    150
EE   170
I    180
J    200
K    210
L    300
GG   320

我想从ABC中获取列名称的唯一值,并且更喜欢具有较低值编号的值,例如AA来了两次所以我想要获得AA一次,但是价值较低的那个。

SELECT DISTINCT
    (NAME),
    VALUE
FROM
    ABC
ORDER BY
    NAME ASC;

请帮忙。感谢

2 个答案:

答案 0 :(得分:8)

SELECT 
    NAME       AS NAME  ,
    MIN(VALUE) AS VALUE
FROM ABC
GROUP BY NAME
ORDER BY NAME ASC;

答案 1 :(得分:1)

我不知道oracle的语法,但是MSSQL是一个分组(名称),并且值上的min会与你正在做的事情一起完成。