如何修剪或截断DB2列中的第一个字符

时间:2019-05-21 12:17:22

标签: char db2 trim

我的列电话号码带有值,并且想要更新表格列,以使国家代码不存在。 19083452345 14084456789 12023458900 18163456789

我尝试使用LPAD,LTRIM,但无法成功。

2 个答案:

答案 0 :(得分:0)

使用SUBSTR这样的事情:

update tablename set phone=substr(phone,2,length(phone)-1)

答案 1 :(得分:0)

使用正则表达式(regex)。在执行此操作之前,请检查国家/地区代码在数据库中的写入方式,所使用的标准(如果有)(E.164是趋势,但并非始终遵循)。例如,英国的移动电话号码可以注册为“ 07911 123456”,也可以注册为“ +44 7911 123456”(带或不带空格)。 http://regexlib.com/Search.aspx?k=phone+number&c=0&m=0&ps=20&p=11&AspxAutoDetectCookieSupport=1

之类的页面中有很多正则表达式

我不知道您使用的是哪种Db2风格(IBM i的Db2,zOS的Db2或LUW的Db2),它们之间的正则表达式支持可能会有很小的差异。下面的文章介绍了如何在Db2 11.1中将正则表达式用于LUW:https://www.idug.org/p/bl/et/blogaid=605