一般的b树索引就行了,
sqlserver2000的全文索引比2005的慢多了

解决方案 »

  1.   

    ●聚集索引结构
    在SQL Server中,索引是按B+树结构来进行组织的。聚集索引的数据排列顺序与数据的物理排列顺序相同 ●聚集索引和非聚集索引的根本区别是表记录的排列顺序和与索引的排列顺序是否一致.
      聚集索引表记录的排列顺序与索引的排列顺序一致,优点是查询速度快,
      因为一旦具有第一个索引值的纪录被找到,具有连续索引值的记录也一定物理的紧跟其后。
      聚集索引的缺点是对表进行修改速度较慢,这是为了保持表中的记录的物理顺序与索引的顺序一致,  
      而把记录插入到数据页的相应位置,必须在数据页中进行数据重排,降低了执行速度。
      建议使用聚集索引的场合为:
          ①此列包含有限数目的不同值;  
        ②查询的结果返回一个区间的值;  
        ③查询的结果返回某值相同的大量结果集。
      
    ●非聚集索引指定了表中记录的逻辑顺序,但记录的物理顺序和索引的顺序不一致,
      聚集索引和非聚集索引都采用了B+树的结构,但非聚集索引的叶子层并不与实际的数据页相重叠,
      而采用叶子层包含一个指向表中的记录在数据页中的指针的方式。非聚集索引比聚集索引层次多,
      添加记录不会引起数据顺序的重组.  
      建议使用非聚集索引的场合为:
        ①此列包含了大量数目不同的值;  
        ②查询的结束返回的是少量的结果集;  
        ③WHERE字句用经常使用的列。
        ④经常需要连接或分组的列。  
        ⑤order   by   子句中使用了该列。  
      

  2.   

    1:創見一個非UNIQUE非聚集索引
    2:沒必要建立全文索引
    3:可以用DBCC DBREINDEX重建索引
      

  3.   

    在itemname上创建一个普通索引就行了。全文索引比较站资源,并且主要集中在itemname这个列上查询,就没有必要建立全文索引了。
    create index i_itemname
    on zy_patientexpense(itemname)
      

  4.   

    但是普通索引对这样的语句:
    select * from zy_patientexpense where itemname like '%护理%'
    有作用吗,好象只队'护理%'这样的语句有效把
      

  5.   

    经常查询itemname这个字段,那么只要对这个字段建立索引就可以了.你的数据量这么大,建议在数据库空闲的时候,把旧的索引删除,重新建立索引也可以提高查询速度