Намерих добър отговор тук:Проследяване на прогреса на изявление за актуализиране
Номерът е първо да създадете последователност (именувайте я както искате):
CREATE SEQUENCE query_progress START 1;
След това добавете към частта WHERE на вашата заявка:
AND NEXTVAL('query_progress')!=0
Сега можете да направите заявка за напредъка:
SELECT NEXTVAL('query_progress');
Накрая не забравяйте да се отървете от последователността:
DROP SEQUENCE query_progress;
Обърнете внимание, че това най-вероятно ще направи вашата заявка още по-бавна и всеки път, когато проверявате напредъка, тя допълнително ще увеличава стойността. Връзката по-горе предлага създаване на временна последователност, но PostgreSQL изглежда не ги прави видими в сесиите.