Boas ....

Bem. Estou com uma pequena dúvida ...
Qual a melhor forma de eu trazer em um select de duas tabelas (POR
EXEMPLO pessoa e pessoa_telefone) somente aquelas que não possuam
nenhum telefone cadastrado.
Hoje em dia faço da seguinte forma ...

Mas acho que isso é muito desperdício :

EXPLAIN SELECT * FROM tzr_log L
LEFT OUTER JOIN tzr_replicated_log RL
ON RL.id_log = RL.id_log
WHERE RL.id_log IS NULL;

"Nested Loop Left Join  (cost=21.25..61334.05 rows=523920 width=238)"
"  Filter: ("inner".id_log IS NULL)"
"  ->  Seq Scan on tzr_log l  (cost=0.00..19399.20 rows=523920 width=182)"
"  ->  Materialize  (cost=21.25..21.29 rows=4 width=56)"
"        ->  Seq Scan on tzr_replicated_log rl  (cost=0.00..21.25
rows=4 width=56)"
"              Filter: (id_log = id_log)"


Pois assim ele irá efetuar seqScan nas duas tabelas ... e só depois
aplicar o filtro ...

Não existe uma forma um pouco mais "simples" de executar isso ??


Att:
Thiago Risso
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a