... de hecho, ahora que me fijo, la expresión puede mejorarse un poco
más aún así...
SELECT vigo.puerto, avg(vigo.potencia)::numeric(3,0) media FROM vigo
WHERE vigo.puerto::text = 'vigo'::text GROUP BY vigo.puerto union all
select 'NO Vigo' puerto,avg(potencia)::numeric(3,0) media from vigo
where puerto !='vigo';