如何高效能拆分一个字段为多行(2)

来源:未知 责任编辑:责任编辑 发表时间:2015-03-01 01:40 点击:
               ',' || c2 || ',' AS ca,  
               length(c2 || ',') - nvl(length(REPLACE(c2, ',')), 0) AS cnt  
          FROM t1) t,  
       (select rownum lv from  
        (select max(length(c2 || ',') - nvl(length(REPLACE(c2, ',')), 0)) mlc from t1)   
         connect by level<=mlc  
       )d         
WHERE d.lv <= t.cnt  
ORDER BY c1  
  www.2cto.com  
结论:
对于表资料只有一笔的时候,用connect by一般不会有什么问题。但如果表中资料是多笔,则connect by会产生海量的重复资料。
 
用join方式可解决此类问题。
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • Request.ServerVariables 参数大全
  • 查看sql修改痕迹(SQL Change Tracking on Table)
  • 写给MongoDB开发者的50条建议Tip1
  • Percolator与分布式事务思考(二)
  • SQL Server、Oracle、db2所提供的简装版(Express)比较
  • App数据层设计及云存储使用指南
  • 导入excel文件处理流程节点的解决方案
  • MongoDB安装为Windows服务方法与注意事项
  • PostgreSQL 安装问题
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索 - 移动版 - 返回顶部
Copyright © 2008-2013 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1