一个关于查询效率的问题~! 急 b.docno = a.flddocno这两个字段上有索引吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 但我建立了索引后(b.docno = a.flddocno这两个字段都已经建立索引),查询速度快了,但还是第一句比第二句快,请问何解啊? where子句从上往下执行,所以先执行:flddocno is not null因为有not null 所以flddocno索引不会被使用你看一下执行计划吧,看看有没有走索引 根2个表的数据量有很大关系如果 flddocno 上有索引的话,你还可以把 flddocno is not null 改为flddocno > ' '如果是数值型, 则flddocno > -999 等但用不用该字段上的索引,同样和数据量有很大关系 如下是两条语句的执行计划:请帮忙分析一下,谢谢1)用in的那句SELECT STATEMENT, GOAL = CHOOSE 2 1 14 SORT AGGREGATE 1 14 FIRST ROW 2 9582 134148 INDEX FULL SCAN (MIN/MAX) WWW TBLDEFINE_FLDDOCNO_IDX 2 9582 TABLE ACCESS FULL WWW STATCALLRESULT 1 3 422)用exists的那句SELECT STATEMENT, GOAL = CHOOSE 4 1 28 SORT AGGREGATE 1 28 NESTED LOOPS ANTI 4 18 504 INDEX FAST FULL SCAN WWW TBLDEFINE_FLDDOCNO_IDX 4 191635 2682890 INDEX UNIQUE SCAN WWW STATCALLRESULT_DOCNO_IDX 58 812谢谢 三表Full Join,求SQL优化。 有一张记录用户登录信息的表,现想统计2小时内登录次数超过N次的用户,如何用sql实现 ORACLE全文索引失效 用sql语句如何能够查出来某天在季度中是第几天? Procedure 中的EXCEPTION 为什么无法安装 怎么会显示字段不属于表呢?(新手,谢谢) 字符问题 求救!!有谁做个oracle9i+win2000server+dataware的双机热备方案! 数据库的导入问题-----解决绝对给分! 求教:用脚本手动创建一个数据库后,如何自动添加该数据库到监听服务中? oracle问题急需解决!在线等!
因为有not null 所以flddocno索引不会被使用你看一下执行计划吧,看看有没有走索引
flddocno is not null 改为
flddocno > ' '
如果是数值型, 则flddocno > -999 等
但用不用该字段上的索引,同样和数据量有很大关系
1)用in的那句
SELECT STATEMENT, GOAL = CHOOSE 2 1 14
SORT AGGREGATE 1 14
FIRST ROW 2 9582 134148
INDEX FULL SCAN (MIN/MAX) WWW TBLDEFINE_FLDDOCNO_IDX 2 9582
TABLE ACCESS FULL WWW STATCALLRESULT 1 3 422)用exists的那句
SELECT STATEMENT, GOAL = CHOOSE 4 1 28
SORT AGGREGATE 1 28
NESTED LOOPS ANTI 4 18 504
INDEX FAST FULL SCAN WWW TBLDEFINE_FLDDOCNO_IDX 4 191635 2682890
INDEX UNIQUE SCAN WWW STATCALLRESULT_DOCNO_IDX 58 812谢谢