有个sql是这样写的
select count(*) from da_grxx u where u.pym like 'W%' and xm='王'
其中在pym这个字段上建立了索引
查看执行计划发现pym这个索引未生效
去掉后面的 xm='王'之后索引就生效了da_grxx这张表上建有5个索引,pym是个独立的索引,该表数据量50多万,pym like 'W%'的数据5000左右
还有,在另一环境下该sql索引又是有效的不知有人碰到这种奇怪的问题否??
select count(*) from da_grxx u where u.pym like 'W%' and xm='王'
其中在pym这个字段上建立了索引
查看执行计划发现pym这个索引未生效
去掉后面的 xm='王'之后索引就生效了da_grxx这张表上建有5个索引,pym是个独立的索引,该表数据量50多万,pym like 'W%'的数据5000左右
还有,在另一环境下该sql索引又是有效的不知有人碰到这种奇怪的问题否??
我用这个分析语句分析了一下,但还是有那个问题
这样的分析语句同楼上的有区别吗
唯一的区别是大写的查出的数据量是总数的14%左右,小写的只有很少的数据
like 'W%' and xm='王' 不起作用
like 'WW%' and xm='王' 起作用
为什么会得到这个结果就不清楚了
可以试试用hint强制走索引