当前位置: 代码迷 >> Oracle开发 >> 联合索引和分开建索引有什么区别解决方法
  详细解决方案

联合索引和分开建索引有什么区别解决方法

热度:36   发布时间:2016-04-24 07:31:44.0
联合索引和分开建索引有什么区别

A:
create index idx_owner_name_age on people(name,age); 

B:
create index idx_owner_name on people(name); 
create index idx_owner_age on people(age); 



请问A和B有什么区别?

------解决方案--------------------
复合索引的几个字段是否经常同时以AND方式出现在Where子句中?单字段查询是否极少甚至没有?如果是,则可以建立复合索引;否则考虑单字段索引;

------解决方案--------------------
首先物理存储上,复合索引和多个单字段索引 是不一样的。
那么在insert 时 维护索引就有区别

查询上,如果经常用多个字段查询,建议建复合索引。
反之。
------解决方案--------------------
create index idx_owner_name_age on people(name,age); 如果NAME字段不走索引,AGE字段肯定也不会走索引,如果NAME字段走索引,AGE就会走索引
  相关解决方案