Basicamente você deverá cria uma function e uma trigger e toda vez que houver o evento insert e ou update executar'aa função que calculará o resultado no campo.
No exemplo abaixo a coluna3 é calculada a partir de uma somatoria dos valores da coluna1 e coluna2, porém vc ajusta a realidade de seu cauculo funcão: CREATE OR REPLACE FUNCTION "public"."calcular" () RETURNS trigger AS' begin if (new.coluna1 is null) or (new.coluna2 is null) then Raise notice ''Factores para o calculo nulos''; new.coluna3 := 0; else new.coluna3 := (new.coluna1 + new.coluna2); end if; return new; end; 'LANGUAGE 'plpgsql' IMMUTABLE CALLED ON NULL INPUT SECURITY INVOKER; trigger: CREATE TRIGGER "fazcalculo" BEFORE INSERT OR UPDATE ON "public"."nomeTabela" FOR EACH ROW EXECUTE PROCEDURE "public"."calcular"(); Atenciosamente, *Mário R. de Castro* Em 18 de abril de 2018 08:29, Rogério Martins <rogmart...@gmail.com> escreveu: > Bom dia pessoal ! > > É possível criar no PG 9.6 um campo calculado ? > Exemplo: > > select > t.data_nascimento, > t.campo_calculado_idade, > from tabela t > > onde: > t.campo_calculado_idade = date_part('year', age(t.data_nascimento) ) > > Não quero usar view, preciso desse campo na tabela. > > Obrigado > > > -- > The Ubuntu Counter Project - user number # 33192 > <http://ubuntucounter.geekosophical.net> > > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral