oracle9i 中关于 regexp_substr
时间:2011-10-28
来源:互联网
如下的视图在oracle9i中怎么转换
create or replace view v_v8_tbl_agent_status as
(
select agent_code,update_time,user_code,user_name,user_area,current_queue_id,class_id,class_name,extension,current_status,
status_start_time,caller,computer_ip,call_center,signin_id,is_warn,warn_item,agent_sub_status,classwork_id,reserve_code1,
regexp_substr(queue_id,'[^;]+',1,line) as queue_id from tbl_agent_status,(select rownum as line from tbl_agent_status connect by rownum<=(select
max(length(queue_id)-length(replace(queue_id,';','')))+1 from tbl_agent_status)) where regexp_substr(queue_id,'[^;]+',1,line) is not null);
谢谢!
create or replace view v_v8_tbl_agent_status as
(
select agent_code,update_time,user_code,user_name,user_area,current_queue_id,class_id,class_name,extension,current_status,
status_start_time,caller,computer_ip,call_center,signin_id,is_warn,warn_item,agent_sub_status,classwork_id,reserve_code1,
regexp_substr(queue_id,'[^;]+',1,line) as queue_id from tbl_agent_status,(select rownum as line from tbl_agent_status connect by rownum<=(select
max(length(queue_id)-length(replace(queue_id,';','')))+1 from tbl_agent_status)) where regexp_substr(queue_id,'[^;]+',1,line) is not null);
谢谢!
作者: liuhengwinner 发布时间: 2011-10-28
regexp_substr(queue_id,'[^;]+',1,line)
是以;为分隔符,把queue_id分成N部分,然后从第1个字符,开始截取第line的部分的串,例:
select regexp_substr('aaa;bbbbb;cccc','[^;]+',1,2) from dual
结果是bbbbb。
不过转的话,代码就多了。
是以;为分隔符,把queue_id分成N部分,然后从第1个字符,开始截取第line的部分的串,例:
select regexp_substr('aaa;bbbbb;cccc','[^;]+',1,2) from dual
结果是bbbbb。
不过转的话,代码就多了。
作者: yixilan 发布时间: 2011-10-28
我就是想要转的代码
作者: liuhengwinner 发布时间: 2011-10-28
那你是不是应该把表结构贴出来,另外整一点数据?
作者: opps_zhou 发布时间: 2011-10-28
表的结构如下图
select t.user_name,t.queue_id from tbl_agent_status t
返回查询结果
User_NAME QUEUE_ID
曾桦 46-1;8-1;9-1
叶小叶 1-1;13-1;
原来是在Oracle10中的视图实现如下查询结果
User_NAME QUEUE_ID
曾桦 46-1
曾桦 8-1
曾桦 9-1
叶小叶 1-1
叶小叶 13-1;
但oracle9i 中 没有regexp_substr 应该如何转换
select t.user_name,t.queue_id from tbl_agent_status t
返回查询结果
User_NAME QUEUE_ID
曾桦 46-1;8-1;9-1
叶小叶 1-1;13-1;
原来是在Oracle10中的视图实现如下查询结果
User_NAME QUEUE_ID
曾桦 46-1
曾桦 8-1
曾桦 9-1
叶小叶 1-1
叶小叶 13-1;
但oracle9i 中 没有regexp_substr 应该如何转换
作者: liuhengwinner 发布时间: 2011-10-28
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28