MongoDB:为两个不同的用户查找相同的条目?

MongoDB:为两个不同的用户查找相同的条目?,mongodb,mongodb-query,Mongodb,Mongodb Query,我有一个收藏,在那里我储存了用户之间的友谊。例如: user_1 -> user_4 user_1 -> user_8 user_1 -> user_23 等等 在该集合中,只有这两个字段和一个用于输入的标准“id”字段 问题:我想比较两个不同的用户,并想得到两个用户的条目 例如: user_1 -> user_4 user_1 -> user_8 user_1 -> user_23 集合中的用户\u 1条目: user_1 -> user_4 us

我有一个收藏,在那里我储存了用户之间的友谊。例如:

user_1 -> user_4
user_1 -> user_8
user_1 -> user_23
等等

在该集合中,只有这两个字段和一个用于输入的标准“id”字段

问题:我想比较两个不同的用户,并想得到两个用户的条目

例如:

user_1 -> user_4
user_1 -> user_8
user_1 -> user_23
集合中的用户\u 1条目:

user_1 -> user_4
user_1 -> user_8
user_1 -> user_23
user_2 -> user_4
user_2 -> user_323
user_2 -> user_23
集合中的用户\u 2条目:

user_1 -> user_4
user_1 -> user_8
user_1 -> user_23
user_2 -> user_4
user_2 -> user_323
user_2 -> user_23
当我知道比较用户_1和用户_2条目时,查询应返回两个条目作为结果(两个用户的条目相同):

所以我知道用户_1和用户_2有两个共同的朋友(用户_4和用户_23)

更新:

这是当前的集合结构:

{ "_id" : ObjectId("5aacd8f60d16f81bfb2ec729"), "username" : "bellamissy95", "belongs_to_user" : ObjectId("5aacd8500d16f81bd56f0e90")}
{ "_id" : ObjectId("5aacd8f60d16f81bfb2ec72a"), "username" : "salome350", "belongs_to_user" : ObjectId("5aacd8500d16f81bd56f0e90")}
{ "_id" : ObjectId("5aacd8f60d16f81bfb2ec72b"), "username" : "jacky_25.11.17_", "belongs_to_user" : ObjectId("5aacd8500d16f81bd56f0e90")}
{ "_id" : ObjectId("5aacd8f60d16f81bfb2ec72c"), "username" : "jxsmin.mke", "belongs_to_user" : ObjectId("5aacd8500d16f81bd56f0e90")}
{ "_id" : ObjectId("5aacd8f60d16f81bfb2ec72d"), "username" : "toni_w2005", "belongs_to_user" : ObjectId("5aacd8500d16f81bd56f0e90")}

Legend:
"_id": the id of the entry
"username": name of the friend
"belongs_to_user": _id of the user entry
有人知道怎么做吗


谢谢!

假设包含数据的集合名为“友谊”,并定义为

{ "_id" : <some unique number> , "user":"user_1","friend":"user_4"}

不是很清楚,因为它实际上有助于显示文档是如何表示在您真正存储这些文档的位置上的。总是有“方法”,但这是您的“真实”文档就像是对实际解决方案很重要的东西。我建议你实际展示它,而不是一些不能准确描述你真正拥有的东西的抽象版本。至少从查看问题的人的角度来看。@NeilLunn我更新了帖子并插入了当前的收藏结构。希望它能有所帮助。那么这是如何做到的呢t数据关联?每个条目都是一个“唯一”的朋友,不是吗?显示共享相同朋友的用户不是重点吗?显示一些支持这一点的数据,如您所给出的,迄今为止没有用户共享相同的“朋友”是的,这是两个用户之间的典型朋友关系。因此,当我的系统存储人与人之间的所有关系时,我想知道用户a和用户B(相比之下)有多少个共同的朋友。就是这样。