一条SQL优化的问题 CVBS_CONTRACT的索引CVBS_SUBS的索引带上全部条件的执行计划: 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 其实我也不太懂优化,我觉得你是不是可以通过子查询将你需要的数据从每个表中筛选出来后再进行连接,直接连接感觉太混乱了。我也不知道行不行,你可以试试因为不带6个条件查询是1.4秒 我试过先不带条件查询 然后结果外再加6个条件 但是一样的不会动本来你的数据就很大,再相互连接就更恐怖了,我的意思先通过条件将数据量变小再对表进行关联我找到问题了去掉AND A.PARENT_CONTRACT_ID IS NULL就很快了 OK了 AND A.PARENT_CONTRACT_ID IS NULL放在最后就很快 但是不知道为什么 AND A.PARENT_CONTRACT_ID IS NULL 无法走索引,索引不存储NULL值 现在的问题是删掉AND A.PARENT_CONTRACT_ID IS NULL会快很多 但是加上--AND A.EXP_DATE >= TO_DATE('2004-02-14 14:13:05', 'yyyy-mm-dd hh24:mi:ss') --AND A.EXP_DATE <= TO_DATE('2014-02-14 14:13:09', 'yyyy-mm-dd hh24:mi:ss') 任意一个会慢10秒 两个都加上 会卡死 A.EXP_DATE 是可空的老板说了 帮忙解决的也给媳妇啊!!1 把 上面注释的那些查询条件放到 where 1=1 后面试试? AND A.EXP_DATE >= TO_DATE('2004-02-14 14:13:05', 'yyyy-mm-dd hh24:mi:ss') --AND A.EXP_DATE <= TO_DATE('2014-02-14 14:13:09', 'yyyy-mm-dd hh24:mi:ss') EXP_DATE 建索引,在连接A表钱 先把符合条件的拿出来再连接 A B D这三个表的记录多大,我看有好几个过滤条件,能过滤掉多少数据呢,如果过滤掉大部分,那么就先把过滤的插入临时表另外,我看你的select子句里边使用了函数,这个函数的性能怎样?如果不好,是不是可以使用左连接来做? EXP_DATE需要建立函数索引,直接在EXP_DATE上建索引,TO_DATE也不会走索引。 关于oracle10g插入慢的问题,求解答。。。 oracal的安装问题 老生常谈:oracle查询优化 新手级别的小问题! 无DBA权限时,怎么用SQL语句查看自己的表空间剩余多少兆? 在SQL Plus中pl/SQL怎样执行? ORA-12560:TNS:协议适配器错误 怎么解决?急急急!高分相赠 字符集、备份问题 改变计算机名或者IP后的问题! 为什么我用jsp调用oracle8i时,无法用beforeFirst(),高手帮帮忙! 请教一下oracle备份还原的问题 求一条SQL语句删除重复记录
因为不带6个条件查询是1.4秒 我试过先不带条件查询 然后结果外再加6个条件 但是一样的不会动
本来你的数据就很大,再相互连接就更恐怖了,我的意思先通过条件将数据量变小再对表进行关联
我找到问题了
去掉AND A.PARENT_CONTRACT_ID IS NULL就很快了
--AND A.EXP_DATE >= TO_DATE('2004-02-14 14:13:05', 'yyyy-mm-dd hh24:mi:ss')
--AND A.EXP_DATE <= TO_DATE('2014-02-14 14:13:09', 'yyyy-mm-dd hh24:mi:ss')
任意一个会慢10秒 两个都加上 会卡死
老板说了 帮忙解决的也给媳妇啊!!1
--AND A.EXP_DATE <= TO_DATE('2014-02-14 14:13:09', 'yyyy-mm-dd hh24:mi:ss')
EXP_DATE 建索引,在连接A表钱 先把符合
条件的拿出来再连接