-
隐式转换导致索引失效.这一点应当引起重视.也是开发中经常会犯的错误. 由于表的字段tu_mdn定义为varchar2(20),
但在查询时把该字段作为number类型以where条件传给Oracle,这样会导致索引失效.
错误的例子:select * from test where tu_mdn=13333333333;
正确的例子:select * from test where tu_mdn='13333333333'; -
like "%_" 百分号在前.
-
or 运算符有没有建立索引的的操作数(or两边列都需要索引)
-
如果列类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引
-
如果mysql估计使用全表扫描要比使用索引快,则不使用索引
-
对索引列进行运算导致索引失效,我所指的对索引列进行运算包括(+,-,*,/,! 等)
网友评论