Как я могу получить первый и последний документ на основе поля 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
Я ожидаю список с двумя записями [первый, последний]. Где первая и последняя полные документы из коллекции –