微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

mongodb索引

mongodb的索引

一,索引分为:单字段索引,复合索引,多key索引,文档索引等等

 

1,单字段索引(Single Filed Index)

  命令:db.person.createIndex( {age: 1} )

  解释:

    person:  指collection  ,可以理解为关系型数据库的表,

    createIndex:创建索引的方法

    age:  需要加索引的字段,

    1 :表示升序,-1表示降序,这个对于单字段表现的都差不多

    认的_id  也是单字段索引

 

2,复合索引(Compound Index)

    查询过程:会先按照第一个字段排序,当第一个字段一样的时候,按照第二个字段排序,一次类推

    命令:db.person.createIndex( {age: 1, name: 1} )

    注意:在创建复合索引,根据数据场景和数据的分布情况,选择不同的字段在前面,会出现不同的查询速度,没有真实测试过,

3,多Key索引(multikey Index)

  当为collection中某个字段创建索引时,这个字段是数组,将会自动创建多key索引,即为这个字段的数组的每个元素创建索引,这个可以的场景:不用喜好的人,不用标签分类的书籍等,使用

多个标签或者关键字的collection,

4, 哈希索引(Hash Index)

  以某个字段的哈希值做索引,字段完全匹配时使用

5.地理位置索引(Geospatial Index)

  在O2O场景中使用

6,文本索引(Text Index)

  在快速查询文本中使用,以一个文本的内容创建索引

 

二,索引的一些额外属性

  1,唯一索引

  2,TTL索引

  3,部分索引

  4,稀疏索引

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐