我目前的文件结构与:
相似{
'name': 'Sum Guy',
'age': 31,
'scores': {'blue': 5, 'yellow': 9, 'red': 2}
}
我似乎无法找到合适的映射或排序方式。
我希望得到的结果是“向我展示30岁以上的所有人并按照'蓝色'分数对他们进行排序”
Nested documents似乎总是数组,而不仅仅是普通的哈希。
有什么想法吗?
答案 0 :(得分:2)
如果这是您的文档结构,则不需要嵌套文档。您可以按scores.blue
排序。
如果您有一个对象数组,嵌套文档的点是。 如果你的结构是这样的:
{
'name' : 'Sum Guy',
'age' : 31,
'scores' : [{
'name' : 'blue',
'count' : 5
}, {
'name' : 'yellow',
'count' : 9
}
}
]
}
然后你需要“得分”作为嵌套类型。当你有一个这样的数组时,名字和计数的值将在顶层被展平。然后搜索“30岁以上蓝色大于5的人”不会带回正确的结果,除非您将其定义为嵌套,然后数组中的每个对象实际上都是一个单独的文档,因此保留了上下文。