MongoDB获取聚合查询中的第一个和最后一个文档
问题描述:
如何根据time
字段获取第一个和最后一个文档。 我可以使用$group
并获得$first
和$last
文件,但我不需要在这里分组,只需获取第一个和最后一个完整文档。也许我可以用slice
?该查询不起作用:MongoDB获取聚合查询中的第一个和最后一个文档
{
"aggregate": "353469045637980_data",
"pipeline": [
{
"$match": {
"$and": [
{
"time": {
"$gte": 1461369600
}
},
{
"time": {
"$lt": 1461456000
}
}
]
}
},
{
"$project": {
"first": {
"$slice": 1
},
"last": {
"$slice": -1
}
}
}
]
}
第一个和最后一个值是什么?你可以更具体一些,也许包括一堆测试文件和你的预期输出? – chridam
我期待列出两个条目[第一,最后]。首先和最后是收集完整的文件 –