PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

INSERT a SELECT GROUP BY :mais colunas de destino do que expressões de erro


Quando você coloca expressões entre parênteses, o Postgres interpreta o resultado como uma tupla -- essencialmente uma estrutura ou registro.

Então, sua afirmação:
SELECT (
        nextval('"KPI_MEASURE_ID_seq"'::regclass),
        now(),
        kpi_project.id,
        kpi_measure.kpi_frequency_id,
        kpi_metric.id ,
        kpi_measure.branch ,
        sum(kpi_measure.value)
     )

está retornando um valor. Esse valor é um recorde.

Bancos de dados que não suportam tuplas retornariam um erro.

A solução é remover os parênteses.