PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Como acompanhar o progresso da consulta no PostgreSQL?


Encontrei uma boa resposta aqui:Acompanhamento do progresso de uma declaração de atualização

O truque é primeiro criar uma sequência (nomeie-a como quiser):
CREATE SEQUENCE query_progress START 1;

Em seguida, anexe à parte WHERE da sua consulta:
AND NEXTVAL('query_progress')!=0

Agora você pode consultar o progresso:
SELECT NEXTVAL('query_progress');

Por fim, não se esqueça de se livrar da sequência:
DROP SEQUENCE query_progress;

Observe que isso provavelmente fará com que sua consulta seja executada ainda mais devagar e toda vez que você verificar o progresso, ele incrementará adicionalmente o valor. O link acima sugeriu a criação de uma sequência temporária, mas o PostgreSQL não parece torná-los visíveis nas sessões.