mongodb 中 project 时取数组的最后一个值
在 mongodb 中进行 project 时,可以通过如下方法来获取数组中的最后一个值。
正文
$arrayElemAt (aggregation)
语法:
1 | { $arrayElemAt: [ <array>, <idx> ] } |
- idx 计数从 0 开始
- 为正时,从前向后遍历
- 为负时,从后向前遍历
示例:
1 | { $arrayElemAt: [ <array>, -1 ] } |
v3.2 新增
$last
语法:
1 | { $last: <expression> } |
该语法是
{ $arrayElemAt: [ <array expression>, -1 ] }
的语法糖
v4.4 新增
$slice
语法:
1 | { $slice: [ <array>, <position>, <n> ] } |
示例:
1 | { $arrayElemAt: [ <array>, -1,1 ] } |