多个字段建一个索引和分别建索引有什么区别,比如对查询的使用和速度的影响等

解决方案 »

  1.   

    这就是联合索引和字段单独索引的区别了
    首先:联合索引所占空间应当是比单独索引要少,如果多个字段同时要走索引,性能显然要比单个的高。
    其次:举个例子说了:
          如果一个联合索引,包括三个字段:a,b,c
         那么 where a= ?可以用到缩影。
          同样 where a=? and b=?
              where a=? and b=? and c=?都可以用到索引。
          但 where b=? 是用不到联合索引的。      而各个字段的单独索引显然都可以走索引。
      

  2.   

    索引的建立是要根据实际的情况进行分析而创建的
    建索引占用存储空间,对insert,update等都有影响,建议看一下关于索引方面的书。在数据库中索引是一个很麻烦的部分。
      

  3.   


    如果 where 的时候会单独用到 a 或 b 或 c 的话就要每个字段都要建索引了?
      

  4.   

    换句话说:如果我建立一个包含a,b,c三个字段的联合索引
    那么,我其实是建立了三个索引:(a),(a,b),(a,b,c)
    所以如果单独要用到b,c还是要另外建单独索引的,a就不用了。