Postgres替换字符串中的字符

use*_*271 8 sql postgresql postgis

我有文字列,我需要更改字符!例如

  • ay---->需要成为Day
  • rag---->需要拖动

所以我需要用字符D替换 .我尝试下一步但是我得到错误:无效的正则表达式:量词操作数无效

update  tableT pp set descript=(select regexp_replace(descript,'?', 'D') 
FROM 
  tableT kk where pp.id=kk.id) ;
Run Code Online (Sandbox Code Playgroud)

Pre*_*cho 10

update tableT pp
set descript = (select replace(descript, '?', 'D') from tableT where id = pp.id)
Run Code Online (Sandbox Code Playgroud)

为什么不使用替换?


jar*_*rlh 7

这只是一个简单的问题UPDATE:

update  tableT set descript= regexp_replace(descript,'?', 'D')
Run Code Online (Sandbox Code Playgroud)

添加where descript like '%?%'以最小化事务.

或者,正如卡马乔总统所说,为什么不用replace而不是regexp_replace

  • 在添加的“ WHERE”上加1 (2认同)