Myślę, że to właśnie próbujesz osiągnąć:
SELECT t.* FROM test t
JOIN
( SELECT Name, MIN(Value) minVal
FROM test GROUP BY Name
) t2
ON t.Value = t2.minVal AND t.Name = t2.Name;
Wyjście:
ID | VALUE | NAZWA |
---|---|---|
1 | 10 | wiersz1 |
4 | 5 | wiersz2 |
Zobacz ten SQLFiddle
- Demo z większą liczbą wartości
- Demo ze zduplikowanymi wartościami
- Demo z usuwaniem zduplikowanych wartości (za pomocą
DISTINCT
)
Tutaj sam dołączyłem do tabeli za pomocą minVal i Name.