2015-02-24 168 views
1

我有需要更改字符的文本列! 例如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) 

为什么不使用替换?

4

这只是一个简单的UPDATE:

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

添加where descript like '%�%',以尽量减少交易。

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

+1

加上1加上'WHERE' – 2015-02-24 13:53:13