为了账号安全,请及时绑定邮箱和手机立即绑定

什么是组合索引?

什么是组合索引?

缥缈止盈 2018-12-03 14:13:07
什么是组合索引?如何创建组合索引?使用使用组合索引?
查看完整描述

2 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

什么是组合索引?

基于多个字段而创建的索引就称为组合索引。

 

如何创建组合索引?

联机丛书中关于CREATE INDEX语句的说明很详细,可以看看。如果是要通过企业管理器的话,你可以选中那些需要用来创建组合索引的字段,然后点一下工具栏中的那把“金钥匙”。

 

如何使用组合索引?

这个问题实际上就是所谓的索引覆盖了。组合索引是有顺序的(不是升序降序,而是多个字段的先后顺序),你的WHERE字句中的条件如果含有该组合索引从左到右的全部或部分字段的话,就算是覆盖上了。全覆盖自然好,不过也不是必须的,而且跟查询速度也没有必然的关系。

 

另外,顺便多说两句。

1. WHERE子句中各条件的顺序不必跟组合索引中个字段的一致,只是人为写成一致的话要放心一些罢了,毕竟保不准查询优化器什么时候发点神经。

2. 组合索引的非完全覆盖可不一定比单字段索引慢哦,说不定还更快呢。这里引申出一句话:数据库性能优化不是教条式的。


查看完整回答
反对 回复 2018-12-07
?
qq_笑_17

TA贡献1818条经验 获得超7个赞

多个字段组合成索引,可以加快你的检索数据,当然,你的检索条件必须是这个字段,不然没效果

如你组合2个字段为组合索引 ,A 和 B,

那你检索时  where A=@a and B=@b 那你的检索速度会提高

创建方法网上找找,我这里只给你简单介绍:)


查看完整回答
反对 回复 2018-12-07
  • 2 回答
  • 0 关注
  • 906 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信