1
3
我认为没有完美的解决方案-取决于什么操作对你的应用程序更重要。例如,我相信硅谷的内部商店评论嵌套在MongoDB中。这确实使您提到的查询更加困难。 一个选项是将数组中所有注释的列表存储在post的顶层。把它当作非规范化的数据。然后你可以很容易地找到所有涉及某个评论的帖子。然后,要向下钻取,可以使用map/reduce或db.eval()获取嵌套的post信息。 另一个注意事项是,如果处理单个文档,db.eval()可能比map/reduce轻。$where也是一个选项,但速度可能很慢,所以我喜欢上面提到的附加“注释列表”——不是也很容易索引该数组(参见文档中的“multikey”)。 |
2
2
在dm的文章dwight-meriman的链接中提到使用路径键和执行regex匹配
另一种方法是使用数组
那应该会很快。 如果每个节点只能在一个路径中,那么您就不必担心它在列表中的位置。
会找到“A”的所有孩子 而不是路径名,我可能会使用节点的ID。 更新
给你
但是
只使用第一个元素,然后扫描所有匹配结果中的b。
|
Hayato · 如何检查我是如何安装MongoDB的 2 年前 |
Valeri · 如何仅获取布尔值数组中没有“false”的文档? 2 年前 |
Agrim Singh · 用户数据。名称未显示用户名 2 年前 |
danilonet · MongoDb。NET-ObjectId序列化 2 年前 |
Windy · MongoDB-查询计算和分组多个项目 2 年前 |
Mike Kharkov · 无法从数据库中检索多个值 2 年前 |