mongodb - MongoDB 聚合,表格类型结果
问题描述
我有一个看起来像这样的文档模型
{
_id: objectId,
per: [{
_pid: objectId,
thing1: sting,
thing2: string
}],
ore: [{
_oid: objectId,
thing1: sting,
thing2: string
}],
tre: [{
_tid: objectId,
thing1: sting,
thing2: string
}]
}
我想撤回一个表格表示
[
{_id,_pid,thing1,thing2},
{_id,_pid,thing1,thing2},
{_id,_oid,thing1,thing2},
{_id,_oid,thing1,thing2},
{_id,_oid,thing1,thing2},
{_id,_tid,thing1,thing2}
]
我将如何去做 - 我确定这是一个聚合的事情
解决方案
聚合中的$setUnion可以让您将多个数组合并为一个:
在MongoPlayground现场观看
db.collection.aggregate([
{ $group: {
_id: "$_id",
array: { $push: {
$setUnion: [
"$per",
"$ore",
"$tre"
]
}
}
}
}
]
从那时起,它只是根据您的喜好展开结果。
这是所有展开的完整示例:https ://mongoplayground.net/p/Z9-HHMoQOPA
推荐阅读
- python - 根据特定条件添加到字典并计算文件中的字符串
- php - Display login popup to users in wordpress on "Read more" click in posts
- c# - Unable to deserialize Json array to model object in c#
- javascript - await return undefined javascript
- powershell - File path with quotation mark issue of Powershell
- android - ListView of Linearlayouts
- c++ - 使用 reed solomon 完全恢复数据
- sql - Postgres查询非常大的表,索引仍然很慢
- dask - 关于 xarray apply_ufunc
- javascript - 如何使用 jquery 管理隐藏和显示多个 div 和部分