On 05-02-2014 11:32, Matheus Saraiva wrote:
> Quero deixar a clausula where encapsulada na view e na chamada da view
> eu passaria apenas o nome 'matheus', 'paulo', 'joão', etc....
> 
E você pode deixar condições da cláusula WHERE encapsuladas na VIEW. Por
exemplo:

CREATE VIEW funcionarios_ativos AS SELECT nome, salario FROM
funcionarios WHERE status = TRUE;

SELECT * FROM funcionarios_ativos WHERE nome = 'foo';

Ele apresentará somente funcionários cujo nome é 'foo' e que estejam
"ativos". O que a visão faz é mesclar o SELECT que a definiu com o
SELECT na qual ela foi utilizada. Portanto, internamente temos uma
reescrita da consulta para:

SELECT nome, salario FROM funcionarios WHERE status = TRUE AND nome = 'foo';

Observe que *somente* as colunas mencionadas na definição da visão são
apresentadas.


-- 
   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