Originariamente inviato da piero.mac
forse con qualche alchimia di variabili anche in sql.

Con questa alchimia son riuscito a farla funzionare.
codice:
set @id_soc := 0, @num := 1;
select * from (
select *,
   @num := if(@id_soc = id_soc, @num + 1, 1) as riga_numero,
   @id_soc := id_soc as id
from importi
order by id_soc asc, valore desc) as tab where riga_numero <= 3;