5 个解决方案
#1
我知道是索引无法用上,做的是全表扫描造成的
执行计划为:
( Plan [ Total Cost Estimate: 26.17297 ]
( TableScan t_hlcm_dsj_lsb[ t_hlcm_dsj_lsb.bcpd >= '' : 100% Index ][ ( ( '2009-01-01' <= t_hlcm_dsj_lsb.rq <= '2009-05-13' ) : 6% Guess ) AND ( t_hlcm_dsj_lsb.dq IN ( '福州', '?..', '重庆' ) : 59.32614312% Combined ) AND ( t_hlcm_dsj_lsb.bcpd LIKE '%江苏.??' : 100% Computed ) ] )
)
由于我的表查询条件是任何组合的,导致不能使用索引
执行计划为:
( Plan [ Total Cost Estimate: 26.17297 ]
( TableScan t_hlcm_dsj_lsb[ t_hlcm_dsj_lsb.bcpd >= '' : 100% Index ][ ( ( '2009-01-01' <= t_hlcm_dsj_lsb.rq <= '2009-05-13' ) : 6% Guess ) AND ( t_hlcm_dsj_lsb.dq IN ( '福州', '?..', '重庆' ) : 59.32614312% Combined ) AND ( t_hlcm_dsj_lsb.bcpd LIKE '%江苏.??' : 100% Computed ) ] )
)
由于我的表查询条件是任何组合的,导致不能使用索引
#2
1、在执行相同SQL语句时,基本上所有数据库都是第一次慢;
2、因为你的查询条件是任意的,无法优化。
2、因为你的查询条件是任意的,无法优化。
#3
相同的select语句在第二次提交的时候,数据库系统会直接从缓存中取记录。不需要再分析,编译。
#4
#5
后来我知道原因了
是数据库的碎片造成的
我的数据库大小是自增的,这个造成了很多碎片
是数据库的碎片造成的
我的数据库大小是自增的,这个造成了很多碎片
#1
我知道是索引无法用上,做的是全表扫描造成的
执行计划为:
( Plan [ Total Cost Estimate: 26.17297 ]
( TableScan t_hlcm_dsj_lsb[ t_hlcm_dsj_lsb.bcpd >= '' : 100% Index ][ ( ( '2009-01-01' <= t_hlcm_dsj_lsb.rq <= '2009-05-13' ) : 6% Guess ) AND ( t_hlcm_dsj_lsb.dq IN ( '福州', '?..', '重庆' ) : 59.32614312% Combined ) AND ( t_hlcm_dsj_lsb.bcpd LIKE '%江苏.??' : 100% Computed ) ] )
)
由于我的表查询条件是任何组合的,导致不能使用索引
执行计划为:
( Plan [ Total Cost Estimate: 26.17297 ]
( TableScan t_hlcm_dsj_lsb[ t_hlcm_dsj_lsb.bcpd >= '' : 100% Index ][ ( ( '2009-01-01' <= t_hlcm_dsj_lsb.rq <= '2009-05-13' ) : 6% Guess ) AND ( t_hlcm_dsj_lsb.dq IN ( '福州', '?..', '重庆' ) : 59.32614312% Combined ) AND ( t_hlcm_dsj_lsb.bcpd LIKE '%江苏.??' : 100% Computed ) ] )
)
由于我的表查询条件是任何组合的,导致不能使用索引
#2
1、在执行相同SQL语句时,基本上所有数据库都是第一次慢;
2、因为你的查询条件是任意的,无法优化。
2、因为你的查询条件是任意的,无法优化。
#3
相同的select语句在第二次提交的时候,数据库系统会直接从缓存中取记录。不需要再分析,编译。
#4
#5
后来我知道原因了
是数据库的碎片造成的
我的数据库大小是自增的,这个造成了很多碎片
是数据库的碎片造成的
我的数据库大小是自增的,这个造成了很多碎片