db2 字符串处理

db2 字符串处理,第1张

先写一个 REVERSE 函数, 用于字符串反转。

(REVERSE 函数 Oracle 和 SQL Server 都有的, DB2 有可能没有。)

你可以去百度查下 “db2 REVERSE” 这样的关键字。

调用的时候, 就是 REVERSE ( 'test_ip_steal' )

返回结果是 laets_pi_tset

然后使用 POSSTR , 找到 反转后的 第一个 _ 的位置。

就是POSSTR (REVERSE ( 'test_ip_steal' ) )

相当于 POSSTR ( 'laets_pi_tset' )

返回结果是 6

然后用 SUBSTR 函数, 取得 后面的信息

就是 SUBSTR ( REVERSE ( 'test_ip_steal' ), POSSTR (REVERSE ( 'test_ip_steal' )+ 1 )

相当于 SUBSTR ( 'laets_pi_tset' , 6+1 )

返回结果是 pi_tset

最后再把上面的结果, 再反转一次, 就是你要的最终结果了。

REVERSE (

SUBSTR ( REVERSE ( 'test_ip_steal' ), POSSTR (REVERSE ( 'test_ip_steal' )+ 1 )

)

我觉得就得写个函数来做这件事情,因为DB2好像没有这种统计特定字符出现字数的函数,自己写个吧,基本算法是这样:

1.用locate函数找到逗号

2.substr函数截取逗号之后的字符串

3.调到第一步执行,直到substr取到的字符串为空


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9934788.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存