Hallo,
select distinct wie Sven vorschlägt wird dir wenig bringen da der nicht zwingend den niedrigsten Eintrag bringt sondern im Normalfall den Eintrag, der als erster in der DB war, wobei man sich auch darauf nicht verlassen kann.
Bzw. ist 'min()' ohne 'group by' nicht möglich, und 'distinct' würde wieder alle DatenSätze bringen, sofern keine Doubletten (name _und_ nummer sind gleich wie bei einem anderen Record) vorliegen.
Also bleibt nur die von Dir vorgeschlagene Lösung. Wobei, der Vollständigkeit halber, dazugesagt werden sollte, daß, sollten zusätzliche Spalten ausgegeben werden, diese entweder auhc mit 'group by' erfasst oder aber mittels Aggregat-Funktion (min(),max(),sum()...) abgefragt werden.
Grüße
Klaus