请问如何根据字段值中的逗号来拆分,并把拆分的数据保存到新表中?
时间:2011-11-11
来源:互联网
旧表tbl1
ID YUANGONG
10 6057863,6081791,6102168
11 6045986,6102305,6086817
12 6052191,6041969
13 6072396,6077206,6051936,6091173
如何根据YUANGONG字段中的“,”来拆分保存到新表tbl2中去?
新表tbl2
ID YUANGONG
10 6057863
10 6081791
10 6102168
11 6045986
11 6102305
11 6086817
.......
13 6091173
请大家帮忙看下
ID YUANGONG
10 6057863,6081791,6102168
11 6045986,6102305,6086817
12 6052191,6041969
13 6072396,6077206,6051936,6091173
如何根据YUANGONG字段中的“,”来拆分保存到新表tbl2中去?
新表tbl2
ID YUANGONG
10 6057863
10 6081791
10 6102168
11 6045986
11 6102305
11 6086817
.......
13 6091173
请大家帮忙看下
作者: yctcsms 发布时间: 2011-11-11
其实就是字符串的拆分。
有2种方式:
1. 在编程语言中进行处理。(建议采用这种方式,因为一般的编程语言都提供了相应的方法,可以直接用)
2. 写存储过程进行处理。
有2种方式:
1. 在编程语言中进行处理。(建议采用这种方式,因为一般的编程语言都提供了相应的方法,可以直接用)
2. 写存储过程进行处理。
作者: LuiseRADL 发布时间: 2011-11-11
connect by
start with
递归调用。
start with
递归调用。
作者: cutebear2008 发布时间: 2011-11-11
SQL code
insert into tb2(ID YUANGONG) select id,regexp_substr(YUANGONG,'[^,]+',1,n) from tb1 left join (select level from dual connect by level < 10/*这里自己调整一下,用SQL也能做到,但是没有太大意义*/)nn on 1=1 where regexp_substr(YUANGONG,'[^,]+',1,n) is not null
作者: forgetsam 发布时间: 2011-11-11
谢谢!~ 最终用了下面这段
SQL code
SQL code
insert into tb2(ID YUANGONG) select id,regexp_substr(YUANGONG,'[^,]+',1,n) from tb1 left join (select level,rownum n from dual connect by level < 15)nn on 1=1 where regexp_substr(YUANGONG,'[^,]+',1,n) is not null;
作者: yctcsms 发布时间: 2011-11-11
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28