Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当我们有特定字段时,MongoDB中的多对多关系_Mongodb_Many To Many_Relationship - Fatal编程技术网

当我们有特定字段时,MongoDB中的多对多关系

当我们有特定字段时,MongoDB中的多对多关系,mongodb,many-to-many,relationship,Mongodb,Many To Many,Relationship,对于多对多关系,我们可以在两个集合上保存objectId(比如用户,当然)。问题是,我有一些特定的字段给参加过课程的用户,比如他在这门课程上的进度。在上述方法中,它帮不了多少忙 我也读过,但这里的clicks是一个顶级实体,有自己的集合 我有课程和用户收藏,我有特定的字段,如课程上的用户进度,购买的,用户笔记,等等 问题是我是否应该采用SQL方法来使用连接表来存储上述字段 EDIT1: 其中一种方法可以如下所示,具有用户课程集合: 另一种方法是将user\u课程嵌入到用户集合中。由于每个用户

对于多对多关系,我们可以在两个集合上保存objectId(比如用户,当然)。问题是,我有一些特定的字段给参加过课程的用户,比如他在这门课程上的进度。在上述方法中,它帮不了多少忙

我也读过,但这里的clicks是一个顶级实体,有自己的集合

我有
课程
用户
收藏,我有特定的字段,如
课程上的用户进度
购买的
用户笔记
,等等

问题是我是否应该采用SQL方法来使用连接表来存储上述字段


EDIT1:
其中一种方法可以如下所示,具有用户课程集合:

另一种方法是将
user\u课程
嵌入到用户集合中。由于每个用户最多有100个课程,因此可以在
user
collection中设置。因此,该设计可以如下所示:


现在你建议如何设计收藏?你采取什么方法?为什么?

考虑到这里的基数,我会将
进度
存储为每个
用户的嵌入式文档
。但由于不知道您的确切需求,这是非常主观的,需要讨论。@SylvainLeroux谢谢您的时间:)请查看问题的编辑部分。;-)