是否可以从一个集合的项目的值指向另一个集合的项目?
示例:
db.col2.save( { value: 'test' } );
db.col1.save( { title: 'testing, something: [code to point to another collection's item] } );
db.col1.find().toArray()
[
{
"_id" : ObjectId([someobjectidhere]),
"title" : "testing",
"something": {
"value": "test"
}
}
]
答案 0 :(得分:3)
是的,您可以指向另一个文档,但与SQL不同,您无法同时检索两者。 因此,您需要进行2次检索。一个获取第一个文档(然后在代码中提取引用),然后使用此引用获取第二个文档
答案 1 :(得分:2)
MongoDB不支持联接。在MongoDB中,一些数据被“非规范化”,或者与文档中的相关数据一起存储以消除对连接的需要。但是,在某些情况下,将相关信息存储在单独的文档中是有意义的,通常是在不同的集合或数据库中。
您可以参考DBRef here
的文档