0

次のようなテーブルがあるとします。

text_col
---------------
apple, pear
apple/orange, pear~pear|pear
kiwi banana
pear\kiwi

pearこの列のすべてを に変更したいwatermelon

私が考えることができるのは、selectを持つすべての行とpearupdate pear1watermelonつずつです。

それを行うためのより良い/よりクリーンな方法はありますか?

これを達成するためにplpgsqlトリガー関数を作成しようとしています。

4

2 に答える 2

2

置換機能はどうですか?

関数

replace(文字列テキスト、テキストからテキストへ)

説明

部分文字列 from の文字列内のすべてのオカレンスを部分文字列 to に置き換えます

サンプル

replace('abcdefabcdef', 'cd', 'XX') abXXefabXXef

あなたのコードは簡単な更新です:

Update table T set text_col = replace( text_col, 'pear', 'watermelon' );

Igor Romanchenko の提案による更新:

Update table T 
set text_col = replace( text_col, 'pear', 'watermelon' )
where text_col like '%pear%';
于 2013-07-31T08:46:25.123 に答える
0

テーブル名からreplace(text_col,'pear','watermelon')を選択

于 2013-07-31T09:30:45.307 に答える