1

我正在使用 Sybase 10 的修改版本,它没有这些东西、replace 或 str_replace 函数。我需要替换一些记录中的部分字符串。

是否有任何创造性的方法可以围绕这个进行编程,所以我不必手动完成它们?

例子:

UPDATE status
SET description = replace(description,'abc','def')
WHERE name = 'test'

编辑: 我发现我们没有字符串操作函数,我必须进行导出和导入才能进行批量字符串更改。我会留下这个问题,以便其他不受我限制的人能够找到答案。

4

2 回答 2

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'

棘手,您必须将要更改的文本放在几个地方,但它有效;-)

于 2009-09-22T17:20:02.287 回答
0

charindex 和 substring 的组合应该适合您。

于 2009-09-22T17:09:11.733 回答