Com uma subconsulta, você tem todas as linhas à sua disposição:
SELECT sum(val) FROM (
SELECT unnest(array[a1,a2,a3]) as val FROM table) alias;
Você também pode agrupar suas linhas, por exemplo:
SELECT field, sum(val) FROM (
SELECT field, unnest(array[a1,a2,a3]) as val FROM table) alias
GROUP BY field;