从字符串中删除不需要的字符

从字符串中删除不需要的字符

员工姓名中有元音字母(AEIOU),现在要求将这些元音字母都去掉。

创建测试用表:

CREATE OR REPLACE VIEW v AS
SELECT 'CLARK' AS ename FROM DUAL
UNION ALL
SELECT 'KING' AS ename FROM DUAL
UNION ALL
SELECT 'MILLER' AS ename FROM DUAL;
SELECT * FROM v;

从字符串中删除不需要的字符

SQL代码如下:

-- 方式一:使用TRANSLATE函数
SELECT ename, TRANSLATE(ename, '1AEIOU', '1') FROM v;

-- 方式二:使用REGEXP_REPLACE函数
SELECT ename, REGEXP_REPLACE(ename, '[AEIOU]') FROM v;

执行结果如下:

从字符串中删除不需要的字符