首页 > 解决方案 > Oracle 12c - 将字符串中的字符替换为空

问题描述

我试图用空格和撇号替换定义为 VARCHAR2(6) 的列中的任何内容,但是我的方法是用最多 6 个字符的空格替换它们。

示例"ABC-""ABC'"需要分别转换为"ABC ""ABC"

我正在使用以下内容:

select UPPER(RPAD(REPLACE(REPLACE(NVL('ABC-',' '),'-',' '),'''',''), 6,' '))
from dual

这是返回"ABC "但应该返回"ABC "

select UPPER(RPAD(REPLACE(REPLACE(NVL('ABC''',' '),'-',' '),'''',''), 6,' '))
from dual

这正在回归"ABC ",但应该回归"ABC"

标签: oracleselectoracle12c

解决方案


使用TRANSLATE 官方文档

TRANSLATE('abc-''','-''',' ')

推荐阅读