如何在select语句中检索的值的末尾和开头添加单引号

rck*_*cky 3 oracle

我有一个选择 sql,它返回一个字符串,如 joe','rose','chandler 我需要使用 sql 得到像 'joe','rose','chandler' 这样的结果 但没有成功。

SELECT '''||NAME||'''
FROM 
(SELECT REPLACE(joe,rose,chandler, ',' ,''',''') AS NAME
FROM TABLE.
Run Code Online (Sandbox Code Playgroud)

joe,rose,chandler 是从表的列中检索到的值。

现在 NAME 被视为字符串而不是从 sql 检索的值。任何人都可以帮忙。

小智 5

就像上面描述的答案一样,如果您只想将 an 连接'到字符串,则语法是 ''''|| 字符串 1 || '''' 但是,如果你想添加一个像 " 'start of sentence"''' 这样的字符串,你可以这样使用:

''' begin of sentence ' || string1 || ' end of sentence '''

结果是:

' begin of sentence string1 end of sentence'

完整的例子可能是……

SELECT ''''||col1||''', '''|| col2 ||''', '''|| col3||'''' AS OUTPUT FROM (
SELECT 'Joe' as col1, 'Rose' as col2, 'Chandeler' AS col3 FROM dual);
Run Code Online (Sandbox Code Playgroud)
|          OUTPUT          |
+--------------------------+
|'Joe', 'Rose', 'Chandeler'|
Run Code Online (Sandbox Code Playgroud)