首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用tsql中的replace函数更新字符串的一部分?

如何使用tsql中的replace函数更新字符串的一部分?
EN

Stack Overflow用户
提问于 2011-02-01 05:06:03
回答 4查看 61.5K关注 0票数 15

您好,我有一个nvarchar(1000)类型的列。我需要删除该列中的编码字符,并将其替换为它们的特殊字符。例如:

column value is : 'This text values contains this '&' this'.

我必须用'&‘替换'&'

  1. 首先必须找到列中包含'&'的记录(可能使用like条件)
  2. ,然后仅将此单词替换为其特殊字符

我该怎么做?Pl。帮助

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-02-01 05:07:54

这将在整个列中替换

REPLACE(MyColumn, '&', '&')

你将不得不嵌套其他的替代品...

REPLACE(REPLACE(MyColumn, '&', '&'), '>', '>')

所有人一起

UPDATE myTable
SET MyColumn = REPLACE(MyColumn, '&', '&')
WHERE MyColumn LIKE '%&%'
票数 32
EN

Stack Overflow用户

发布于 2011-02-01 05:09:18

UPDATE mytable
    SET mycol = REPLACE(mycol, N'&', N'&')
    WHERE mycol LIKE '%&%'

编辑如果你决定一次替换多个html实体,替换的顺序可能会改变结果。

例如:

<

如果您将第一个&amp;替换为&,然后将&lt;替换为<,则将变为&<,但是如果您首先尝试将&lt;替换为<,然后尝试将&amp;替换为<代码>d11,则结果将为&lt;

如果我不得不做这种替换,我通常会出于这个原因最后替换&amp;。当然,这是一种边缘情况,并不是经常发生的事情,但你永远不会知道...

票数 8
EN

Stack Overflow用户

发布于 2012-11-08 15:13:29

通用语法:

UPDATE Table_Name 
SET Column_Name = REPLACE(Column_Name, 'Text_To_Be_Replaced', 'New_Text')
WHERE Column_Name LIKE '%Text_To_Be_Replaced%'
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4856089

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档