2017-04-21 16 views
-2

「ABC、DEF、GHI」のような文字列があります。一重引用符とカンマを追加したいのですが、結果はABC、DEF、GHIのようになりますoracleの文字列に一重引用符とカンマを追加する

+1

あなたがこれまでに試してみましたか?ヒント: '、'を ''、 ''で置き換えなければならないようです。 – Aleksej

+0

なぜこれをしたいのですか?あなたが 'IN'状態で 'ABC、DEF、GHI'のような文字列を使う問題を回避するのに役立つと思うなら、もう一度考えてみてください。うまくいかないだろう。 – mathguy

答えて

0

これはREPLACE()機能で実行できます。また、文字列の先頭と末尾に一重引用符を追加する必要があります(存在しない場合は、下の私のソリューションではそうではないと仮定します)。そして、一重引用符はリテラルに注意する必要がありますまた、文字列には特別な意味があります。このような

何か作業をする必要があります:

with inputs (str) as (select 'ABC,DEF,GHI' from dual) 
    -- end of test data (not part of the solution); SQL query begins BELOW THIS LINE 
select str as old_str, '''' || replace(str, ',', ''',''') || '''' as new_str 
from inputs 
; 

OLD_STR  NEW_STR 
----------- ----------------- 
ABC,DEF,GHI 'ABC','DEF','GHI' 
関連する問題