我是 mongo 的新手,仍然试图将我的头从 mySQL 方法上移开并将其潜入 mongo,所以一些事情仍然模糊我应该怎么做,我希望你们能给我一些启发.
让我解释一下这个问题。我正在使用 nodeJS 和 mongodb 本机。
假设我有一组用户(我使用更简单的 _id 来说明,我知道它是一个 objectID,但只是为了示例而考虑)
{
_id: 1,
name: 'John',
likes: ['2','3','4']
},
{
_id: 2,
name: 'Michelle'
likes: ['1','4']
},
{
name: 'Sabrina'
_id: 3,
likes: []
},
{
name: 'Simone'
_id: 4,
likes: ['1','2', '3']
}
请注意,John 喜欢 Michell、Sabrina 和 Simone,Michelle 喜欢 John 和 Simone,Sabrina 不喜欢任何人,而 Simone 喜欢 John、Michelle 和 Sabrina。
我如何对 John 进行查询,以根据他的一系列喜欢找出谁也喜欢他?如果 id = 1,我需要返回 Michelle 的东西,如果 id = 4 则返回 John 和 Michelle。只有我正在获取的 id 是其他用户喜欢的。
让我试着简化一下。
我需要找到约翰并查看他所有的喜欢并检查 id 2 喜欢我吗?是的 id 3 喜欢我吗?不
返回[约翰];
或者找西蒙妮并查看她所有的喜欢并检查 id 1 喜欢我吗?是的 id 2 喜欢我吗?是的 id 3 喜欢我吗?不
返回 [约翰,米歇尔]
任何帮助将不胜感激:)谢谢