假设我在一个名为"用户"的集合中有以下文档模式:
{
name: 'John',
items: [ {}, {}, {}, ... ]
}
"items"数组包含以下格式的对象:
{
item_id: "1234",
name: "some item"
}
每个用户可以在"项"数组中嵌入多个项.
现在,我希望能够通过给定用户的item_id获取一个item.
例如,我想获取id为"1234"的项目,该项目属于名为"John"的用户.
我能用mongoDB做这个吗?我想利用它强大的数组索引,但我不确定是否可以在嵌入式数组上运行查询,并从数组而不是包含它的文档返回对象.
我知道我可以使用{users.items.item_id:"1234"}获取具有特定项的用户.但我想从数组中获取实际项目,而不是用户.
或者,是否有更好的方法来组织这些数据,以便我可以轻松地得到我想要的?我对mongodb还是相当陌生的.
感谢您提供的任何帮助或建议.