如何从Database DB2中的字符串中仅选择字母数字字符?

时间:2016-01-19 12:45:16

标签: sql db2

如何仅从DB2数据库中的字符串中选择字母数字字符

我的数据存在问题,我的数据除了字母数字字符外,还有列字段,其中 EX 位于“名称”列中: Ravicㅗhandran(¬ㅗ○`)就像这些很多角色一样。我需要像Ravichandran这样的结果。我怎样才能实现这一目标?有没有办法通过查询删除。

我尝试了REPLACETRANSLATEASCII函数,但使用这些函数时出现问题我不确定这些未知字符是什么,我已经在上面展示的只是示例

我的要求是,除了字母数字外,必须删除。并且列中的Balance字符串应该相同。

我怎样才能完成这项工作?

提前致谢

1 个答案:

答案 0 :(得分:4)

使用TRANSLATE(column, '', undesired_characters)从字符串中删除不需要的字符。

但是,您不知道列中存在哪些不需要的字符。但是你应该知道你认为哪些字符是所希望的

因此,请从字符串中删除所有所需的字符,这样就会在其中显示不需要的字符。你有不受欢迎的角色,你现在可以从原始字符串中删除:

TRANSLATE(column, '', TRANSLATE(column, '', desired_characters))

E.g:

TRANSLATE(column, '', 
  TRANSLATE(column, '', 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz '))