Selecione um conjunto dinâmico de colunas de uma tabela e obtenha a soma para cada

É possível fazer o seguinte no Postgres:

SELECT column_name FROM information_schema WHERE table_name = 'somereport' AND data_type = 'integer';

SELECT SUM(coulmn_name[0]),SUM(coulmn_name[1]) ,SUM(coulmn_name[3]) FROM somereport;

Em outras palavras, preciso selecionar um grupo de colunas de uma tabela, dependendo de determinados critérios, e, em seguida, somar cada uma dessas colunas na tabela.

Eu sei que posso fazer isso em um loop, para que eu possa contar cada coluna de forma independente, mas, obviamente, isso requer uma consulta para cada coluna retornada da consulta do esquema de informações. Por exemplo:

FOR r IN select column_name from information_schema where report_view_name = 'somereport' and data_type = 'integer';
LOOP
    SELECT SUM(r.column_name) FROM somereport;
END

questionAnswers(1)

yourAnswerToTheQuestion