码迷,mamicode.com
首页 > 数据库 > 详细

MongoDB 学习笔记之 索引

时间:2017-09-16 16:03:17      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:rto   lin   line   http   index   logs   键值   insert   ima   

索引:

 

db.media.createIndex({"Tracklist": 1})

  • 1表示升序
  • -1表示降序

 

我们要着重看一下对数组创建索引的情况。

构建一个集合:db.media.insertOne({"Type": "CD", "Artist": "Nirvana", "Title": "Nevermind", "Tracklist": [{"Track": 1, "Title": "AAA", "Length": 10},{"Track": 2, "Title": "BBB", "Length": 20}]})

技术分享

 

对数组创建索引:

db.media.createIndex({"Tracklist": 1})

技术分享

查询:

db.media.find({"Tracklist.Track": 2}).explain(true)

技术分享

发现并未使用索引。

db.media.find({"Tracklist": {"Title": "AAA"}}).explain(true)

技术分享

 db.media.find({"Tracklist": {"Track": 1, "Title": "AAA", "Length": 10}}).explain(true)

技术分享

都使用了Tracklist索引。

所以如果对数组建立了索引,查询要指定的是文档对象,而不是键值。

MongoDB 学习笔记之 索引

标签:rto   lin   line   http   index   logs   键值   insert   ima   

原文地址:http://www.cnblogs.com/AK47Sonic/p/7531393.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!