我正在使用Sybase 10的修改版本,它没有stuff,replace或str_replace函数。我需要在许多记录中替换部分字符串。
是否有任何创造性的方法可以对此进行编程,因此我不必手动完成所有这些操作?
示例:
UPDATE status
SET description = replace(description,'abc','def')
WHERE name = 'test'
编辑:我发现我们没有字符串操作函数,我必须进行导出和导入才能进行批量字符串更改。我会留下这个问题,所以其他不受我限制的人将能够找到答案。
答案 0 :(得分:6)
UPDATE status
SET description = SUBSTRING(description,1,CHARINDEX('abc',description)-1)
+ 'def' +
SUBSTRING(description,CHARINDEX('abc',description)+CHAR_LENGTH('abc'),CHAR_LENGTH(description)-CHARINDEX('abc',description))
WHERE name = 'test'
Tricky,你必须在几个地方放置你想要改变的文字,但它有用; - )
答案 1 :(得分:0)
charindex和substring的组合应该适合你。