替换 Amazon Redshift 中列中的单引号字符

Pat*_*bug 2 mysql amazon-redshift

我在以下格式的表中有一些数据Amazon Redshift

Column1    Column2
'a'          'b'
Run Code Online (Sandbox Code Playgroud)

我想从此表中删除单引号字符并获取如下数据:

Column1    Column2
a            b
Run Code Online (Sandbox Code Playgroud)

我原以为该Replace函数可以解决问题,因此我编写了以下查询:

select replace(column1,''',''),
       replace(column2,''','')
from table
Run Code Online (Sandbox Code Playgroud)

但这不起作用,并给了我Amazon](500310) Invalid operation: unterminated quoted string at or near "''',''). 我试图转义单引号字符,\但即使这样也不起作用。

我还尝试使用以下查询:

select replace(column1,"'",''),
           replace(column2,"'",'')
    from table
Run Code Online (Sandbox Code Playgroud)

但它给了我错误 [Amazon](500310) Invalid operation: column "'" does not exist in <tablename>

那么如何从我的数据中删除这些单个字符呢?

任何帮助将非常感激。

TIA。

tad*_*man 5

对于 MySQL,您有两种引用方式,因此您需要切换:

REPLACE(column1, "'", "")
Run Code Online (Sandbox Code Playgroud)

您不能在不转义的情况下将相同的字符用于分隔和内容:

REPLACE(column1, '\'', '')
Run Code Online (Sandbox Code Playgroud)


Rah*_*pta 5

select replace(column1,chr(39),''),
       replace(column2,chr(39),'')
from table
Run Code Online (Sandbox Code Playgroud)

CHR 函数返回与输入参数指定的 ASCII 代码点值匹配的字符。

如果我做了一个错误的假设,请发表评论,我会重新调整我的答案。