我有一组具有以下结构的mongodb文档:
{
"_id" : NUUID("58fbb893-dfe9-4f08-a761-5629d889647d"),
"Identifiers" : {
"IdentificationLevel" : 2,
"Identifier" : "extranet\\test@test.com"
},
"Personal" : {
"FirstName" : "Test",
"Surname" : "Test"
},
"Tags" : {
"Entries" : {
"ContactLists" : {
"Values" : {
"0" : {
"Value" : "{292D8695-4936-4865-A413-800960626E6D}",
"DateTime" : ISODate("2015-04-30T09:14:45.549Z")
}
}
}
}
}
}
如何使用mongo shell进行查询,该shell查找具有特定"值"的所有文档。 (例如,Tag.Entries.ContactLists.Values路径中的{292D8695-4936-4865-A413-800960626E6D}?
遗憾的是,该结构被Sitecore锁定,因此它不是使用其他结构的选项。
答案 0 :(得分:0)
由于您的示例集合结构显示Values
是对象,因此它只包含一个Value
。此外,您必须检查Value
,因为它包含额外的paranthesis。如果您想从给定结构中获取Value
,请尝试以下查询:
db.collection.find({
"Tags.Entries.ContactLists.Values.0.Value": "{292D8695-4936-4865-A413-800960626E6D}"
})