现在的位置: 网页制作教程网站制作经验 >正文
SQL语句教程

SQL语句:如何匹配替换第一个关键词

发表于2020/4/30 网站制作经验 0条评论 ⁄ 热度 1,682℃

在sqlserver的Sql语句里,如何实现查找某个字段的内容,匹配第一个出现的关键词,并替换它。我们知道Sqlserver支持replace和CHARINDEX函数,我们就用这两个内置函数实现。

需求语句如下:

update a set content=replace(content,'替换词old','替换词new')

内容里面有多个‘替换词old',请问如何只替换第一个匹配项?

实现语句:

//写法一
update a set
content=replace(content,'替换词old','替换词new') WHERE CHARINDEX('替换词old',content)=1
//写法二
update a set
content=stuff(content,charindex('替换词old',content),len('替换词old'),'替换词new')
//写法三 id是主键
update a
set content=replace(content,'替换词old','替换词new')
where id=(select top 1 id from a where charindex('替换词old',content)>0) order by id

上面三种sql语句写法,都可实现在字段中替换第一个匹配的关键词。

  • 暂无评论