有个很深奥的难题,大侠请进
创建主键后,系统会自动为该主键创建索引。但如果是联合主键,索引会是什么样子?
比如,一个表中的编码字段和日期字段设为联合主键后,如果查询条件只有编码或只有日期,索引还会起作用吗?
以下是我看见的解答:求证实
假设在表A上建立基于(cola,colb)的组合索引,那么以下三种情况可以走引用该索引:
1.select * from A where cola=1 and colb=5;
2.select * from A where cola=1;
3.select * from A where colb=5 and cola=1;
请注意以下两种情况是不会用到索引的:
1.select * from A where colb=5;
2.select * from A where cola=1 or colb=5;
那假设是3个键的联合主键呢,4,5,6个,请问是什么规律吗
------解决方案--------------------与联合主键的顺序有关。
------解决方案--------------------楼主得去研究索引结构了
------解决方案--------------------规则就是与联合索引多个字段的次序有关
比如索引(A,B,C,D),条件是
A
A,B
A,B,C
A,B,C,D
(在条件中的次序无关)
都可高效使用索引,其它查询不能