2009/8/4 Fabrízio de Royes Mello <[email protected]>

>
>
>
> Podes tentar:
>
> DELETE
>    FROM cobranca_documento_item
>  WHERE EXISTS (SELECT 1 FROM conta_geral WHERE conta_geral.cnta_id =
> cobranca_documento_item.cnta_id AND conta_geral.cntg_ichistorico = 3);
>
> Também podes utilizar a cláusula USING [1] no teu delete para fazer uma
> junção com a tabela "conta_geral".
>
> [1] http://www.postgresql.org/docs/8.4/interactive/sql-delete.html
>
>

O Oswaldo foi mais rápido que eu (hehehe), quando postei a resposta acima
ele já havia respondido... veja também o exemplo dele utilizando o "USING"
no Delete... repita o Explain Analyze e veja a melhor alternativa.

Ps: Se você não tem o autovaccum ativo seria interessante rodar um vacuum
analyze nessa tabela após o delete, claro que dependendo do volume de tuplas
removidas.


Cordialmente,

-- 
Fabrízio de Royes Mello
>> Blog sobre PostgreSQL: http://fabriziomello.blogspot.com
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a