mongodb - 查询以从 mongodb 对象的嵌套数组中获取 id
问题描述
这是数据:
[
{
id: 1,
questions: [{
questionID: 11,
createdDate: 2020 - 06 - 22 T14: 07: 22.193 + 00: 00
},
{
questionID: 12,
createdDate: 2020 - 06 - 20 T13: 05: 55.193 + 00: 00
},
{
questionID: 13,
createdDate: 2020 - 06 - 21 T10: 05: 23.193 + 00: 00
}
]
},
{
id: 2,
questions: [{
questionID: 11,
createdDate: 2020 - 06 - 22 T14: 07: 22.193 + 00: 00
}]
}
]
如何使用聚合从 mongodb 获取同一查询中的问题 ID 和问题总数。
预期资源:
[{
'id': 1,
totalNumberOfQuestions: 3,
ids: [11, 12, 13]
}]
解决方案
试试这个:
db.collection.aggregate([
{
$project: {
id: 1,
totalNumberOfQuestions: { $size: "$questions" },
ids: "$questions.questionID"
}
}
])
推荐阅读
- javascript - MVC:Razor:将 SelectList 的 SelectedValue 绑定到文本框
- python - Python Pandas - 匹配两个系列中的值
- asp.net-core - 使用反射访问属性 apicontroller
- ios - 如何在不同位置设置不同的图像引脚 SWIFT
- java - 我可以将@OneToMany 与 JPA 的关系与内存中的 H2 实体和 SQLServer 实体映射吗?
- android - 使用 android studio 移动编辑文本提示
- python - 如何在 heroku 上部署 Python API?没有名为“app”的模块错误
- matlab - 在不使用 Hist 的情况下在 Matlab 中生成直方图
- ios - 为什么我的 UICollectionView 大纲不起作用?
- vim - 如何在 7.3 之前的 vim 上启用语法高亮?