On 05-02-2014 15:40, Matheus Saraiva wrote:
> E se eu quisesse não escrever nenhum WHERE na linha que chama a VIEW?
> Algo como:
> 
> CREATE VIEW funcionarios_ativos AS SELECT nome, salario FROM
> funcionarios WHERE nome = (VALOR SERÁ PASSADO NA CHAMADA DA VIEW);
> 
> SELECT * FROM funcionarios_ativos (VALOR QUE SERÁ USADO NO WHERE
> ENCAPSULADO);
> 
> Como ficaria?
>
Vejo que você não compreendeu o conceito de visão (leia [1]). Visões são
definidas com consultas e são utilizadas em consultas; funções recebem
parâmetros. A visão pode ser utilizada para restringir os dados a serem
obtidos ou mesmo encapsular uma consulta complexa. Você está pensando de
maneira procedural e não de maneira declarativa.


[1] http://www.postgresql.org/docs/9.3/static/rules-views.html


-- 
   Euler Taveira                   Timbira - http://www.timbira.com.br/
   PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a