问一个sql的问题
我要把字符串替换成如下效果,sql如何写aabbaabbaaddaa 替换成aabbaabbaaddcc
意思就是只替换最后一个aa,其他的aa都不要换 --------------------编程问答-------------------- 你可以在程序里替换后,在插入数据库啊
--------------------编程问答--------------------
--------------------编程问答--------------------
string ss=aabbaabbaaddaa;
ss=ss.substring(0,ss.Length-2)+"cc";
declare @s varchar(50)
set @s='aabbaabbaaddaaff'
select stuff(@s,len(@s)-charindex('aa',reverse(@s)),2,'cc')
aabbaabbaaddccff --------------------编程问答-------------------- sql
select substring('aabbaabbaaddaa',1,len('aabbaabbaaddaa') - (charindex(reverse('aa'),reverse('aabbaabbaaddaa')) + len('aa') - 1))
+ replace(reverse(substring(reverse('aabbaabbaaddaa'),1,charindex(reverse('aa'),reverse('aabbaabbaaddaa'))+ len('aa')-1)),'aa','cc')
'aabbaabbaaddaa' 替换 最后一个aa 为cc --------------------编程问答-------------------- --------------------编程问答-------------------- 基本思路,找到最后一个aa的位置,然后用CC替换
因为没有lastcharindex 所以复杂了点,
同时考虑aa可能不是最后几个字符
declare @a varchar(40)
declare @b varchar(40)
declare @c varchar(40)
set @a='aabbaabbaaddaa233'
set @b='aa'
set @c='cc'
print substring(@a,1 , len(@a)-charindex( REVERSE(@b),REVERSE(@a))-1 )+@c+ substring(@a,len(@a)-charindex( REVERSE(@b),REVERSE(@a))+len(@b),1000 )
--------------------编程问答--------------------
楼主可以用这个方法来实现。
补充:.NET技术 , ASP.NET