Postgres заменяет символы в строке

У меня есть столбец с текстом, где мне нужно изменить символов! Например

  • �ay - - - - > должен быть день
  • �тряпочку---->нужно перетащить

поэтому мне нужно заменить � символом D. Я пытаюсь далее, но я получаю ошибку: недопустимое регулярное выражение: квантификатор операнд недопустимый

update  tableT pp set descript=(select regexp_replace(descript,'�', 'D') 
FROM 
  tableT kk where pp.id=kk.id) ;

2 ответов


update tableT pp
set descript = (select replace(descript, '�', 'D') from tableT where id = pp.id)

почему не использовать replace?


это просто простое обновление:

update  tableT set descript= regexp_replace(descript,'�', 'D')

добавить where descript like '%�%' чтобы свести к минимуму операции.

или, как сказал президент Камачо, почему бы не использовать replace вместо regexp_replace?