我正在寻找从MongoDB中检索一些数据,但我不确定如何有效地做到这一点。可能是我的收藏/文档结构不理想,我需要以不同的方式存储它。任何建议将不胜感激..
我有两个集合 - 对象和对象视图
物件
{
"_id" : ObjectId( "4f182ac3369a2b2603010000" ),
"name" : "Object name",
"project_id" : "4f182a76369a2b2903000000"
}
对象观看次数
{
"_id" : ObjectId( "4f182ac3369a2b2603010000" ),
"2012" : {
"r" : 8,
"t" : 16,
"u" : 10,
}
}
我想从属于特定项目的所有对象的'对象视图'集合中检索2012.r.
以下是我对如何操作的想法:
任何想法/建议或替代解决方案都将不胜感激!
答案 0 :(得分:1)
将project_id字段添加到所有“对象视图”文档中,然后执行 查找查询以选择与project_id匹配的所有文档。是 它不赞成/有效地选择多个文件(可能有 只有2或多达2000)?
绝对是在性能(db.object_views.find({project_id : "4f182a76369a2b2903000000" })
)和代码&查询简单。
驱动程序在引擎盖下进行批处理,因此获取2000个文档并不是什么大问题。
答案 1 :(得分:0)