当前位置:  开发笔记 > 编程语言 > 正文

如何删除db2中的所有非数字字母

如何解决《如何删除db2中的所有非数字字母》经验,为你挑选了1个好方法。

我在DATA列(varchar)中有一些数据,如下所示:

Nowshak 7,485 m
Maja e Korabit (Golem Korab) 2,764 m
Tahat 3,003 m
Morro de Moco 2,620 m
Cerro Aconcagua 6,960 m (located in the northwestern corner of the province of Mendoza)
Mount Kosciuszko 2,229 m
Grossglockner 3,798 m

我想要的是:

7485
2764
3003
2620
6960
2229
3798

IBM DB2 9.5版中是否可以通过执行以下操作来除去/删除所有这些非数字字母:

SELECT replace(DATA, --somekind of regular expression--, '') FROM TABLE_A

或其他方式?

这个问题来自这个问题。



1> Michael Shar..:

正如另一个问题所建议的那样,TRANSLATE函数可能会有所帮助。例如,尝试以下操作:

select translate('Nowshak 7,485 m','','Nowshakm,') from sysibm.sysdummy1;

返回值:

7 485

稍加调整,就可以达到所需的效果……在函数的第三个参数中,您只需指定整个字母即可。有点丑陋,但可以正常工作。


然后,您可以使用[REPLACE](http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=%2Fcom.ibm.db2.udb.admin.doc%2Fdoc%2Fr0000843。 htm)去除空白,如果要的话:从sysibm.sysdummy1中选择replace(translate('Nowshak 7,485 m','','Nowshakm,'),'','')
推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有