![](/img/trans.png)
[英]Mongoose: How to sort aggregate response with two fields
[英]mongoose: how to sort with aggregate search
我有這個聚合搜索 function
filter = { 'games.game_info.game_time': -1 };
.aggregate([
{
$match: {}
},
{
$project: {
games: 1,
game_number: {
$size: '$games'
}
}
},
{
$facet: {
paginatedResult: [ { $sort: filter } ]
}
}
])
游戲有這個數組。
games: [
{
game_id: '1',
game_type: 'GTA5',
game_info: {
game_time: '2021-01-17 02:30:00.000Z',
sports_code: '2'
},
},
{
game_id: '2',
game_type: 'GTA5',
game_info: {
game_time: '2021-01-17 08:45:00.000Z',
sports_code: '2'
},
}
]
我正在嘗試按時間對列表進行sort
。 但是,我堅持這一點。 嘗試了各種方法。 如何使filter
與 +1 或 -1 一起使用,以便按最接近或最晚的時間對列表進行排序?
您可以像這樣對其進行排序。您還可以使用 $count 獲取記錄總數。
Games.aggregate([
{
$facet: {
data: [
{ $match: { game_type: 'GTA5' } },
{ $sort: { 'game_info.game_time': -1 } }
],
total_count: [
{ $count: 'count' }
]
}
}
]);
希望它有所幫助... :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.