Olá pessoal,
Estou estudando como criar funções na linguagem SQL por aqui:
http://pgdocptbr.sourceforge.net/pg80/xfunc-sql.html
Nesta página, quando se retorna um tipo composto, no exemplo uma tabela é
criada antes, e depois é retornada o tipo daquela tabela, por exemplo:
CREATE TABLE emp (
nome text,
salario numeric,
idade integer,
baia point
);
CREATE FUNCTION novo_empregado() RETURNS emp AS $$
SELECT text 'Nenhum' AS nome,
1000.0 AS salario,
25 AS idade,
point '(2,2)' AS baia;
$$ LANGUAGE SQL;
Então, vou criar uma função que gera pra mim um relatório, e essa função
deve me retornar um dado composto, cada linha uma venda e cada coluna
detalhes sobre esta venda.
Acontece que para retornar esse tipo composto, se eu seguir o exemplo, vou
ter que criar uma tabela relatório, sendo que não vou armazenar nada nesta
tabela, ela seria apenas o modelo para o retorno da minha função.
Preciso criar um tabela, ou posso definir um tipo sem criar tabela?
Outra coisa, enquanto escrevia este post, uma coisa me veio a mente: Ao
invés de criar uma função que gere esse relatório, eu poderia no ato da
venda, fazer todos os calculos de relatorio e gravar no campo de vendas. Por
exemlo, lucro, despesas, comissões, tudo isso não varia depois da venda.
Acho que o corretor seria eu calcular e gravar esses valores na hora da
venda, quando for solicitado relatório eu apenas iria consultar esses dados.
É melhor não é?
--
View this message in context:
http://www.nabble.com/Fun%C3%A7%C3%A3o-retornado-tipo-composto.-Preciso-criar-tabela--tp25231950p25231950.html
Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral