Originariamente inviato da sspintux
....forse mi sfugge qualcosa ?
chiedo scusa...
....ho corretto la risposta precedente troppo tardi
per cui ne riporto l'essenziale in una nuova

.. ecco cosa mi sfuggiva :
.... praticamente devo prendere per ogni singolo codice la prima riga...

non l'ho provata ma dovrebbe andare

codice:
Select  T.*, Q.* from 
Tabella T
inner join
(select Codice , Max(Numero) as MaxNumero from Tabella group by codice) as Q 
on T.Codice=Q.Codice AND T.Numero=Q.MaxNumero