Em 2 de junho de 2014 15:30, Matheus de Oliveira <[email protected]>
escreveu:

>
> 2014-06-02 15:00 GMT-03:00 Danilo Silva <[email protected]>:
>
>  Qual a melhor forma de saber quais são esses registros que estão sem pai?
>> Estou tentando um select com not in mas está demorando muito (mais de 15
>> minutos) e por causa da demora acabo cancelando a query.
>
>
> Se estiver falando de relacionamento e não herança, então seria algo do
> tipo:
>
>
> ​​
> SELECT f.XXX FROM filha f
>   WHERE NOT EXISTS(SELECT 1 FROM pai p WHERE p.pai_id = f.pai_id);
>
> Isso pode demorar mesmo, criando índices nas colunas pai_id de ambas
> ajuda. Aumente o work_mem também, isso provavelmente vai usar um Hash.
>
> ​O work_mem atualmente está em 16MB devo aumentar?​

​Um outro detalhe, o banco de produção está na versão 9.1, como tem
bastante I/O​, subi em outro servidor a versão 9.3.4 para tentar tornar a
consulta mais rápida.

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

Responder a