2017-03-31 52 views
0

关于mongoDB中的一对多关系,我有一个快速的问题。在此之前,我主要使用过SQL,所以我对如何处理关系感到困惑。我已经在线查看了所有文档,并没有给出如何设置和查询一对多关系的好例子。一对多关系mongoDB

假设我有一个用户表,每个用户都有很多产品。这意味着在SQL情况下,表中的多个产品将具有相同的用户foreign_key。在mongoDB中,我试图通过将每个用户对象ID放入相应的产品中进行复制,这些产品的销售很像外键。

我对如何查询它感到困惑。例如,我将如何做SELECT * FROM USERS,PRODUCTS WHERE USER_ID = USERFK_ID ;?

我已阅读关于文档参考,嵌入式文档,但它只是让我更困惑。有没有人有一个直接的解释,请。

回答

0

假设我明白你的问题,我将有一个用户集合和一个产品集合。

用户集合将包含用户及其详细信息。例如。

{ID: '007',名称: '约翰'} { ID: '010',名称: '保罗'}

该产品系列将包含产品挂钩于给用户。例如。

{ID: '432738',产品名称: '苹果',售价: '100',老板: '007'}即所有者是约翰

至于有关的查询,我会做这样的事情:

db.collection(“产品”)找到。({老板:user_id_here})

0

一到一对多的关系是在父文档可以有很多子文档,但孩子的文件只能有一个母文件。

db.artists.insert( { _id:3, ARTISTNAME: “白鲸”, 专辑:[{ 专辑 : “播放”, 年:1999年, 流派: “电子乐” } , { 专辑: “长环境温度是1:镇静安眠。” 年:2016年, 流派: “环境” } ] } )