Sql 用Oracle替换多个字符

Sql 用Oracle替换多个字符,sql,oracle,replace,translate,Sql,Oracle,Replace,Translate,我需要替换数据库中文本字符串中的几个字符。我有一个包含人名的数据库,但由于我来自一个使用“非法”字符(如“Æ”、“Ø”和“Å”)的国家,我必须过滤掉这些字符,并用其他字符替换它们——而每一个“非法字符”都将有自己的“合法字符”,它们将被切换到。例如,“å”将变成“a”,“æ”将变成“e”等等 我试过这样做: select TRANSLATE(FIRSTNAME || '.' || LASTNAME, 'å', 'a') from mytable 当一个人的名字包含“å”时,这会起作用,但如何同

我需要替换数据库中文本字符串中的几个字符。我有一个包含人名的数据库,但由于我来自一个使用“非法”字符(如“Æ”、“Ø”和“Å”)的国家,我必须过滤掉这些字符,并用其他字符替换它们——而每一个“非法字符”都将有自己的“合法字符”,它们将被切换到。例如,“å”将变成“a”,“æ”将变成“e”等等

我试过这样做:

select TRANSLATE(FIRSTNAME || '.' || LASTNAME, 'å', 'a')
from mytable

当一个人的名字包含“å”时,这会起作用,但如何同时对几个字符执行此操作

您只需列出翻译字符串中的字符:

select TRANSLATE(FIRSTNAME || '.' || LASTNAME, 'åaeiou', 'a12345')
from mytable

您只需列出翻译字符串中的字符:

select TRANSLATE(FIRSTNAME || '.' || LASTNAME, 'åaeiou', 'a12345')
from mytable

这很有魅力,谢谢你!我想我必须分几轮翻译,但这非常简单:)@Kremklatt。您必须在多轮中使用
REPLACE()
TRANSLATE()
更简单。这很有效,谢谢!我想我必须分几轮翻译,但这非常简单:)@Kremklatt。您必须在多轮中使用
REPLACE()
<代码>翻译()更简单。