Oracle11g 在oracle中向字符串追加单引号和逗号

Oracle11g 在oracle中向字符串追加单引号和逗号,oracle11g,Oracle11g,我有一个类似“ABC,DEF,GHI”的字符串。我想附加单引号和逗号,我的结果应该是这样的“ABC”、“DEF”、“GHI”您可以使用REPLACE()函数来实现这一点。您还需要在字符串的开头和结尾添加单引号(如果它们不存在-在我下面的解决方案中,我假设它们不存在),并且必须小心使用单引号文字,因为它在字符串中也有特殊的含义 像这样的方法应该会奏效: with inputs ( str ) as ( select 'ABC,DEF,GHI' from dual ) -- end of te

我有一个类似“ABC,DEF,GHI”的字符串。我想附加单引号和逗号,我的结果应该是这样的“ABC”、“DEF”、“GHI”

您可以使用
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'

到目前为止你试过什么?提示:似乎您必须将
替换为
,“
为什么要这样做?如果您认为这可以帮助您解决在
条件下使用类似“ABC,DEF,GHI”的字符串的问题,请三思;这是行不通的。