首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

有个很深奥的难题,大侠请进,该如何解决

2012-03-19 
有个很深奥的难题,大侠请进创建主键后,系统会自动为该主键创建索引。但如果是联合主键,索引会是什么样子?比

有个很深奥的难题,大侠请进
创建主键后,系统会自动为该主键创建索引。但如果是联合主键,索引会是什么样子? 
比如,一个表中的编码字段和日期字段设为联合主键后,如果查询条件只有编码或只有日期,索引还会起作用吗?

以下是我看见的解答:求证实

假设在表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
(在条件中的次序无关)
都可高效使用索引,其它查询不能

热点排行