这样的表在姓名字段建索引? 
SELECT * FROM TABLE A WHERE A.NAME LIKE '%D'
                                   LIKE '%F%'
                                   LIKE 't%'
都将不会使用name字段上的索引,这楼主可以从测试计划中看出,而且在模糊查询中如果用了计算公式如instr  substr等都将不会使用索引.

解决方案 »

  1.   

    dinya2003(OK) ,substr,instr不用索引,但like好象用索引吧,我曾经有一SQL,有substr几个小时不出来,改为like后半小时就出来了。
      

  2.   

    如果主要以姓名为条件进行查找,且记录很短,
    就做成‘索引组织表’。
    在func(姓名)上建立主索引。
    递增字段做个唯一索引保证唯一性就行了。自定义的func()函数输入姓名,输出姓名的拼音。
    这样就可以按照姓名的拼音来搜索了。再就是尽量不要在like参数中使用前导通配符,例如: '%abc',
    如果不得不经常使用,就建立反转索引。it's all
      

  3.   

    like中好象只有 like 'D%'通配符在后面的才会用索引,具体我没测试过.大家可以测试一下看看.
      

  4.   

    "like中好象只有 like 'D%'通配符在后面的才会用索引,"这还有区别呀?试试看!