MongoDB对嵌入式文档的索引

时间:2018-10-24 09:27:06

标签: mongodb indexing document

{
    "_id" : "sen",

    "DemRole" : [ 
        {
            "Name" : "IO",
            "Status" : false
        }, 
        {

            "Name" : "FO",
            "Status" : true
        }
    ]

}


{
    "_id" : "kum",

    "DemRole" : [ 
        {

            "Name" : "PO",
            "Status" : false
        }
    ]
}

我不想在嵌入式文档DemRole中为单个文档重复条目。因此,我介绍了以下索引

db.UserProfile.createIndex({"DemRole.Name":"text"},{ unique: true });

但这限制了我在_id:kum的嵌入式文档下面添加内容并抛出重复的键错误。

    {
        "Name" : "FO",
        "Status" : true
    }

名称“ FO”表示_id:sen,但不表示_id:kum。我期望如果我为-id:sen添加以上内容,并允许我添加_id:kum,它将引发错误。但是,似乎无法在集合中的任何位置添加名称“ FO”。

我的要求不是_id具有相同的名称,但是另一个_id可以存在相同的名称。也就是说,我不想在文档中使用重复的名称,但是在文档之间可以存在相同的名称。 而索引限制了跨文档重复输入。 你能告诉我如何在mongodb中实现吗?

0 个答案:

没有答案