javascript - 匹配 MongoDB 中嵌套子文档的嵌套数组
问题描述
我正在尝试创建一个符合两个条件的查询。匹配特定的 userId 并匹配一系列 Id。
我尝试find
通过添加userId
然后使用 MongoDB$in
运算符来匹配feature
(作为 id)的列表
const featureIds = features.map(feature => feature._id)
console.log(featureIds)
const isFeatureExists = await this.userShopModel.find({
userId,
'items.feature': { $in: featureIds },
})
console.log(isFeatureExists)
我也尝试过不同版本的aggregate
但没有任何运气。
任何mongo专家,谁能帮助我?
解决方案
使用 _id 进行过滤
const featureIds = features.map(feature => feature._id)
console.log(featureIds)
const isFeatureExists = await this.userShopModel.find({
_id : userId,
'items.feature': { $in: featureIds },
})
console.log(isFeatureExists)
推荐阅读
- json - 在 SQL Server 2008 中打开 JSON 使用
- vb.net - 在if条件下匹配Split string的值
- python - how to make .in file as input for python
- ruby-on-rails - 如何从模板生成 XML?(Leads#create 中的 NoMethodError)(Rails)
- python - 带有 Python 下载按钮的网页
- spring - 使用spring@Transactional时,隔离和传播到底是谁做的,是springframework还是数据库?
- c# - C# - 使用块之外的 TransactionScope?
- c# - 在 Unity 中的 App Start 上每个会话仅运行一次特定代码
- pyparsing - 如何解析和返回关键字的层次结构?
- virtual-machine - 为什么快照加速应用程序启动?