Se raggruppo così
GROUP BY i1.id_ordine,i1.id_soc

va un pò meglio, nel senso che se ho 3 valori uguali me li mostra tutti.
Se però,ad esempio per id_soc 1 ho due volte 50, due volte 40 e una volta 20 mi vengono restituiti solo i due record con valore 50 e nessuno dei due aventi valore 40.