Próbuję uzyskać unikalne wartości z tabeli w Oracle za pośrednictwem sql. Stół wygląda tak.

Tabela: ABC z nazwą i wartością kolumn.

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

Chcę pobrać unikalne wartości z ABC dla nazwy kolumny i najlepiej te, które mają niższą wartość, np. AA pojawia się dwa razy, więc chcę pobrać AA raz, ale z tym, który ma niższą wartość.

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

Proszę pomóż. Dzięki

5
Nomad 13 luty 2012, 08:09

2 odpowiedzi

Najlepsza odpowiedź
SELECT 
    NAME       AS NAME  ,
    MIN(VALUE) AS VALUE
FROM ABC
GROUP BY NAME
ORDER BY NAME ASC;
9
user78706user78706 13 luty 2012, 08:13

Nie znam składni oracle, ale MSSQL to grupa według (Nazwa) i min na wartości, która załatwiłaby sprawę, wraz z tym, co już robisz.

1
Lee Baker 13 luty 2012, 08:12