Penso che questo sia ciò che stai cercando di ottenere:
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;
Uscita:
ID | VALORE | NOME |
---|---|---|
1 | 10 | riga1 |
4 | 5 | riga2 |
Vedi questo SQLFiddle
- Demo con più valori
- Demo con valori duplicati
- Demo con rimozione di valori duplicati (usando
DISTINCT
)
Qui mi sono autounito al tavolo con minVal e Name.