• ベストアンサー

replace関数で複数の文字の変換の仕方は?

よろしくお願いします。 WIN2000 oracle8.1.6 SELECT文でreplace関数を使って文字の変換をしたいのですが、複数の文字の変換は可能でしょうか? やりたい事 aaabb→アアアbb a-aabb→ア=アアbb SELECT replace(001,'a','ア'),002,003,004 FROM ZAIKO よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

やりたいことの検証できるサンプルを書かないと正しく理解できないし、 正しい答えかどうかの検証ができません。 あなたのやりたいことは、REPLACE関数でなく、TRANSLATE関数で.. SELECT TRANSLATE(001,'ab','アウ'),002,003,004 FROM ZAIKO ような感じで出来るはずですよ。

noname#69946
質問者

お礼

素早いご返事ありがとうございます。 TRANSLATE関数は知りませんでした。まだまだ勉強不足です。 実際、テストしてみましたら、思うような結果が得られました。 ありがとうございました。

その他の回答 (2)

  • jch
  • ベストアンサー率38% (7/18)
回答No.3

こんな感じならばどうですか? select replace(replace(Komoku,'A','あ'),'B','い') from table

回答No.1

掲示板で聞くより、やってみるのが一番かと思いますが.. 質問に書かれたやり方で正しく置換されると思います。

noname#69946
質問者

補足

早速回答ありがとうございます。 質問が悪くてすいません。 確かに SELECT replace(001,'a','ア'),002,003,004 FROM ZAIKO でひとつの文字は変換できるのですが、二つ以上の文字の場合は?と言う事が聞きたかったのです。 データ(001) aaabbbcccddd → アアアbbbウウウddd と言うように、「a」を「ア」に「b」を「ウ」にしたいと思っています。 よろしくお願いします。

関連するQ&A