查看: 3857|回复: 1

[讨论] oracle如何优化树形结构查询

[复制链接]
论坛徽章:
0
发表于 2011-9-8 11:43 | 显示全部楼层 |阅读模式
我在查询时使用了oracle的树形结构查询,但是查询速度真的很慢,SQL语句如下:
select
        ite.itemno,
        ite.itemtype,
        ite.itemrevision,
        ite.itemname,
        sum(mb.quantity) as demandQuantity
    from
        MBOM mb
    left join
        MBOMEffectivity eff
            on mb.MBOMID = eff.MBOMID,
        item ite
    where
        mb.itemID = ite.itemID
        and (
            ite.itemType='零件'
            or ite.itemType='组件'
        ) start with mb.deleteFlag=0
        and (
            (
                eff.shipNoFrom<=106
                and  eff.shipNoTo>=106
            )
            or eff.effectivityID is null
        )
        and mb.parentitemid is null
        and mb.projectID= '1234' connect
    by
        prior mb.itemID = mb.parentItemID
        and mb.deleteFlag=0
        and prior ite.itemtype='AO'
        and ((eff.shipNoFrom<=106
        and eff.shipNoTo>=106)
        or eff.effectivityID is null)
    group by
        ite.itemno,
        ite.itemtype,
        ite.itemrevision,
        ite.itemname
    order by
        ite.itemNo asc,
        ite.itemrevision asc
额,这个语句也蛮恶心的,但是没办法,业务要求是那样。有group by等语句,但是去掉group by之后速度还是很低,我现在测试是2W数据量,查询一次需要1.2S左右,客户需要一个循环计算,极端情况下需要循环几百次,几分钟才出结果。。。。
     以前论坛也有个类似的讨论帖,里面有人说建立联合索引,我建了索引之后发现查询效率反而降低了,到了1.5S左右,大家有什么好办法呢,吐血请教啊
论坛徽章:
0
 楼主| 发表于 2011-9-8 11:57 | 显示全部楼层
刚重新测试了一下,因为有表连接,所以降低了速度,如果只是单表查询的话,速度在0.2s左右,还勉强可接受的。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会,7折限时优惠重磅来袭!
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。

限时七折期:2019年8月31日前


----------------------------------------

大会官网>>
TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表