Запрос занимает больше времени в PostgreSQL - PullRequest
0 голосов
/ 02 ноября 2019

Моя таблица, имеющая 20 миллионов записей. Моя таблица содержит два поля (empno, ename). Столбецempno содержит записи, но некоторые столбцы ename не содержат значений. Поэтому я пытаюсь обновить столбец ename, используя приведенный ниже block.i созданный индексдля столбца empno, но этот блок ниже работает более 10 часов (не завершено)

create table index_test(empno integer,ename varchar(50))

create index ix_index_test on index_test(empno,ename)



DO $$
<<first_block>>
DECLARE
X RECORD;
BEGIN
FOR X IN(SELECT EMPNO FROM INDEX_TEST)
LOOP
UPDATE INDEX_TEST SET ENAME='Raja'||x.empno where empno=x.empno AND ENAME IS NULL;
END LOOP;
END first_block $$;

sample records
---------------
Empno     ENAME
15346070  Raja15346070
14208203
15392731
17419579
13287096
...