[英]Sybase SQL: Find last character in a string and replace it
我在字段context
有一个字符串。 此字段中的字符串有两个版本。 我需要按照以下逻辑附加字符串。
“
“
替换为以下字符串:123 现在我尝试不成功
declare @pf varchar(10), @pos int,
select @pflist = context,
@pos = LEN(@pflist) - CHARINDEX('"',REVERSE(@pflist))
UPDATE table SET CONTEXT = str_replace(convert(varchar(255),CONTEXT), ',
"'+ @pos +'"', '123’)
因此,基本上我将带有字符串的字段设置为变量,尝试反转该字段,将位置保存在变量@pos中,然后用我的字符串123替换该位置的字符串。
我收到消息: invalid column name CONTEXT
。 所以我想这@pflist = context,
麻烦@pflist = context,
非常感谢。
尝试这个 :
declare @pf varchar(10), @pos int,
select @pflist = context, @pos = LEN(@pflist) - CHARINDEX('"',REVERSE(@pflist))
UPDATE table SET CONTEXT = CONCAT(LEFT(CONTEXT, CHARINDEX('"',CONTEXT)-1), '123')
如果您需要对表中的所有行进行此类修改-您可以使用下一个脚本:
select
Left(CONTEXT, LEN(CONTEXT) - CHARINDEX('"',REVERSE(CONTEXT))) + '123' + Right(CONTEXT, CHARINDEX('"',REVERSE(CONTEXT))-1)
from TABLE
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.