惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
V2EX
C
Check Point Blog
博客园_首页
B
Blog
D
Docker
U
Unit 42
量子位
I
InfoQ
有赞技术团队
有赞技术团队
Martin Fowler
Martin Fowler
GbyAI
GbyAI
L
LangChain Blog
云风的 BLOG
云风的 BLOG
博客园 - Franky
美团技术团队
T
The Blog of Author Tim Ferriss
阮一峰的网络日志
阮一峰的网络日志
月光博客
月光博客
Vercel News
Vercel News
Recent Announcements
Recent Announcements
雷峰网
雷峰网
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
Google DeepMind News
Google DeepMind News

屹铭说 - LEO屹铭 - 朕弟先生的笔记

🐉 达梦数据库(DM)等效脚本转换(Oracle → 达梦) - 屹铭说 - LEO屹铭 与大模型的交流对话 - 屹铭说 - LEO屹铭 做了一个奇怪的梦 - 屹铭说 - LEO屹铭 戒了,再也不玩期货了 - 屹铭说 - LEO屹铭 元宵节快乐 - 屹铭说 - LEO屹铭 用chatgpt生成两个可爱的头像 - 屹铭说 - LEO屹铭 上海万圣节的一点思考 - 屹铭说 - LEO屹铭 开斋节快乐 Eid Mubrak - 屹铭说 - LEO屹铭 如何使用RustDesk免费自建远程桌面服务,彻底告别ToDesk - 屹铭说 - LEO屹铭
Oracle行转列和REGEXP_SUBSTR,level实例 - 屹铭说 - LEO屹铭
2025-03-11 · via 屹铭说 - LEO屹铭 - 朕弟先生的笔记

LEO-屹铭 2025-03-11 AM 3571℃ 0条

--用A分割,获取两个数组 11a22\33a 大小写敏感
SELECT REGEXP_SUBSTR('11a22A33a','[^A]+',1,level,'c') AS STR
FROM DUAL
connect by level<=5;
--用,分割,获取4个数组 1a\2b\3c\4d 大小写敏感
SELECT REGEXP_SUBSTR('1a,2b,3c,4d','[^,]+',1,level,'c') AS STR
FROM DUAL
connect by level<=5;
--循环实际长度
select regexp_count('1a,2b,3c,4d',',')+1 from dual;
--循环实际长度
select regexp_count('11a22A33a','A')+1 from dual;
--实践
-- select client_id,mobile,REGEXP_SUBSTR(ass_results,'[^,]+',1,level,'c') AS STR from tb_person_assess_record
-- connect by level<=regexp_count(ass_results,',')+1;

with t as
(select '长港路五巷' 地址,'1号' 门牌号,'建苑大厦' 小区,'马武爽' 户主,'121231' 户主身份证号, '张三123 李四3323 王五1212' 人员信息 from dual
union all
select '长港路六巷' 地址,'2号' 门牌号,'长龙苑' 小区, '张大奎' 户主,'12121' 户主身份证号, '马武123 刘贵撒3323 顺丰1212' 人员信息 from dual
)
select 地址,门牌号,小区,人数,'非' 关系,substr(人员信息,0,instr(translate(人员信息,'0123456789','0000000000'),'0')-1) 姓名,
substr(人员信息,instr(translate(人员信息,'0123456789','0000000000'),'0')) 身份证号
 from
 (select distinct   地址,门牌号,小区,level+1 人数,level,regexp_substr(人员信息,'[^ ]+',1,level) 人员信息
from t
connect BY level<=length(人员信息)-length(replace(人员信息,' ',''))+1
order by 地址,门牌号,小区,level) 
union all
select 地址,门牌号,小区,1 人数,'户主' 关系,户主 姓名,户主身份证号 身份证号 from t
order by 地址,门牌号,小区,人数;

人员信息
原始的表信息

处理后表信息
处理后的表信息。