1

私は、stuff、replace、または str_replace 関数を持たない Sybase 10 の修正バージョンで作業しています。多数のレコードで文字列の一部を置き換える必要があります。

これを回避してプログラムするための創造的な方法はありますか?すべて手動で行う必要はありませんか?

例:

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 に答える