首页-玉祥公司客服

标题: oracle中把一位数字变成前面带零的格式 [打印本页]

作者: 张兴康    时间: 2020-2-10 18:36
标题: oracle中把一位数字变成前面带零的格式
例如:现在有这样一个字符串:2,5,15,20,24|5,8;6,15,20,22,27|4,6   如何把其中的小于9的数字前面加个0,
变成02,05,15,20,24|05,08;06,15,20,22,27|04,06 这样格式的呢


实现如下:
  1. WITH t AS (
  2. SELECT '2,5,3,4,15,20,24|5,8;6,15,20,22,27|4,6' col FROM dual
  3. )
  4. SELECT REGEXP_REPLACE(REGEXP_REPLACE(COL, '([,;|]|^)([0-9]{1})', '\10\2'),
  5.                       '([0-9]{1})([0-9]{1})([0-9]{1})',
  6.                       '\2\3') COL1
  7.   FROM T
复制代码



作者: 陈晓龙    时间: 2020-2-11 09:00
厉害
作者: 张兴康    时间: 2020-2-11 16:20
陈晓龙 发表于 2016-3-11 09:00
厉害

看你这个口水都要流出来了
作者: 万望    时间: 2020-2-14 16:12
你这个好复杂的说
作者: 王爱东    时间: 2020-2-14 18:10
正则表达式。这个很有用哈。比如一个字段编码长度的时候,少于多少位自动补0 这种。就很好了。
作者: 张兴康    时间: 2020-2-15 13:15
万望 发表于 2016-3-14 16:12
你这个好复杂的说


作者: 陈晓龙    时间: 2020-2-16 08:56
oracle用处太广泛了!
作者: 张兴康    时间: 2020-2-16 13:17
陈晓龙 发表于 2016-3-16 08:56
oracle用处太广泛了!


作者: 万望    时间: 2020-2-16 22:11
张兴康 发表于 2016-3-16 13:17


作者: 张兴康    时间: 2020-2-17 16:08
万望 发表于 2016-3-16 22:11


作者: 张兴康    时间: 2020-2-17 16:08
万望 发表于 2016-3-16 22:11






欢迎光临 首页-玉祥公司客服 (http://bbs.delit.cn/) Powered by Discuz! X3.2