【发布时间】:2018-12-31 18:27:55
【问题描述】:
我有一个名为tickets的mongo集合,我们将ticket详细信息存储在类似的结构文档中,如下所示:
[
{
"status": "PAUSED",
"lifecycle_dates": {
"OPEN": "d1",
"CLOSED": "d2",
"PAUSED": "d3"
}
},
{
"status": "OPEN",
"lifecycle_dates": {
"OPEN": "d1",
"PAUSED": "d3"
}
},
{
"status": "CLOSED",
"lifecycle_dates": {
"OPEN": "d1",
"CLOSED": "d2"
}
}
]
我需要获取显示票证当前状态和状态日期的数据。
我想投影数据,例如:
[
{
"status": "PAUSED",
"lifecycle_date": "d3"
},
{
"status": "OPEN",
"lifecycle_date": "d1"
},
{
"status": "CLOSED",
"lifecycle_date": "d2"
}
]
如何根据 mongo 聚合管道中的当前状态预测单个生命周期日期? 像这样:
{
$project : {
"status" : 1,
"lifecycle_date" : $lifecycle_dates[$status]
}
}
在mongo reference document here中找不到任何参考或类似问题
当前 mongo 版本:3.2
【问题讨论】:
-
在这里使用
$project...[{$project:{status:1,lifecycle_date:'$lifecycle_dates.PAUSED'}}] -
@AnthonyWinzlet 抱歉问题之前不清楚,我已经更新了。你能再看看吗?
标签: mongodb mongodb-query aggregation-framework