MongoDB 学习笔记之 索引
Posted AK47Sonic
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB 学习笔记之 索引相关的知识,希望对你有一定的参考价值。
索引:
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 学习笔记之 索引的主要内容,如果未能解决你的问题,请参考以下文章