Запрос UPDATE застревает при выполнении функции regexp_replace - PullRequest
0 голосов
/ 26 декабря 2018

Проблема в том, что следующий запрос (postgresql) зависает:

update TableFoo
set myField =  regexp_replace (myField,'\d{5,15}\.\d{2}',
    ((random()*(100000000000-10000000))::numeric(15,2))::text,'g')
where myField is not null; 

, когда встречает числа, подобные этому:

81616776.79999999701976776123046875

в myField.myField - это строка из 10 000-100 000 символов.Выполнение запроса занимает слишком много времени (никогда не дожидаясь окончания выполнения).

Есть идеи почему?А как исправить регулярное выражение, чтобы не застрять в обновлении запроса?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...