Non l'ho provata ma dovrebbe essere una cosa del genere.

select id, articolo, avg(costo) as costo_medio from nome_tabella group by articolo;