Postgresql中怎么把某列中的特定字符进行特定替换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Postgresql中怎么把某列中的特定字符进行特定替换相关的知识,希望对你有一定的参考价值。
我想用命令把A表中的blooeydescr列中的1067替换成1099,不改变其它部分,感谢!
参考技术A update wtstatusinfo set blooeydescr=replace(blooeydescr,'1067','1087')本回答被提问者采纳在 SQL 列中找到特定字符串后更新文本
【中文标题】在 SQL 列中找到特定字符串后更新文本【英文标题】:update text after finding a specific string in column SQL 【发布时间】:2017-06-12 12:25:02 【问题描述】:我想在 PostgreSQL 数据库中的文本列类型中附加一个“文本”。 列中的文字是“您好,欢迎来到我的页面”。
我想在文本“Hello”之后附加一个文本作为“GuestName”;
结果输出应该是: “您好 GuestName 欢迎来到我的页面”。
谢谢 苏尼尔
【问题讨论】:
【参考方案1】:Postgres 有overlay()
功能:
select overlay('Hello welcome to my page' placing 'GuestName' || ' ' from 7 for 0)
如果你想要做一些通用的东西,我会推荐replace()
:
select replace('Hello [GuestName] welcome to my page',
'[GuestName]', 'GuestName')
设置这样的模板可以让您更灵活地构建字符串。
【讨论】:
【参考方案2】:替换(字符串文本,从文本到文本)
UPDATE <table> SET <field> = replace(<field>, 'Hello ', 'Hello GuestName')
或
SELECT replace(<field>, 'Hello ', 'Hello GuestName') FROM <table>
【讨论】:
感谢 SAS,UPDATEupdate your_table set column_name = replace(column_name,'Hello','Hello GuestName')
where column_name = 'Hello welcome to my page';
【讨论】:
以上是关于Postgresql中怎么把某列中的特定字符进行特定替换的主要内容,如果未能解决你的问题,请参考以下文章