我在Amazon Redshift
中使用以下格式的表中有一些数据:
Column1 Column2
'a' 'b'
我想从此表中删除单引号字符并获取如下数据:
Column1 Column2
a b
我原以为Replace
函数可以解决这个问题,所以我编写了以下查询:
select replace(column1,''',''),
replace(column2,''','')
from table
但是这不起作用并且给了我Amazon](500310) Invalid operation: unterminated quoted string at or near "''','')
。我试图通过\
来逃避单引号字符,但即使这样也无效。
我也尝试使用以下查询:
select replace(column1,"'",''),
replace(column2,"'",'')
from table
但它给了我错误[Amazon](500310) Invalid operation: column "'" does not exist in <tablename>
那么如何从我的数据中删除这些单个字符?
非常感谢任何帮助。
TIA。
答案 0 :(得分:3)
使用MySQL,您有两种引用方式,因此您需要切换:
REPLACE(column1, "'", "")
您无法在不转义的情况下对分隔和内容使用相同的字符:
REPLACE(column1, '\'', '')
答案 1 :(得分:3)
select replace(column1,chr(39),''),
replace(column2,chr(39),'')
from table
CHR函数返回与输入参数指定的ASCII代码点值匹配的字符。
如果我做了一个错误的假设请发表评论,我会重新调整我的答案。