在子文档

时间:2016-07-27 02:14:30

标签: mongodb

我在mongoDB中有一个文档,如:

{
    "_id":"jery",
    "pets":{
        "rabbit":{
            "name":"momo",
            "age":2
        },
        "dog":{
            "name":"lizy",
            "age":2
        }
    }
}

这个文档结构很容易更新/ upsert,但很难分析。问题是如何在字段"name"上创建唯一索引

2 个答案:

答案 0 :(得分:2)

更改您的文档结构,如下所示: -

{"_id":"jery","pets":[{"type":"rabbit","name":"momo","age":2},{"type":"dog","name":"lizy","age":2}]}

那么查询起来会很容易。

答案 1 :(得分:1)

为此,您需要执行以下操作: -

db.collection.createIndex( {
   "pets.rabbit.name": 1,       
   "pets.dog.name": 1
} )