oracle数据库如何处理一个人有多个手机号的情况

 我来答
sh...j@163.com
2017-08-02 · 超过18用户采纳过TA的回答
知道答主
回答量:88
采纳率:0%
帮助的人:21.7万
展开全部

测试数据

create table test
(id int,
phone varchar2(200));
insert into test values (1,'13811111111,13311111111,13900000000');
insert into test values (2,'15811111111,15911111111,18800000000');

运行
select id,c from
(with t as (select id,phone c from test)
select id,substr(t.ca,instr(t.ca, ',', 1, c.lv) + 1,instr(t.ca, ',', 1, c.lv + 1) - (instr(t.ca, ',', 1, c.lv) + 1)) AS c
from (select id,',' || c || ',' AS ca,length(c || ',') - nvl(length(REPLACE(c, ',')),0) AS cnt FROM t) t,
(select LEVEL lv from dual CONNECT BY LEVEL <= 100) c where c.lv <= t.cnt) 
order by id

结果

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
壹寰(深圳)科技文化有限公司
2021-03-27 广告
不同公司提供的方案也不一样。以上回答如果还觉得不够详细,可以来咨询下壹寰(深圳)科技文化有限公司。91数据恢复是壹寰(深圳)科技文化有限公司旗下专业数据恢复品牌,91数据恢复专注于勒索病毒数据恢复、勒索病毒数据修复、数据库修复、数据库解密恢... 点击进入详情页
本回答由壹寰(深圳)科技文化有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式