MongoDB聚合运算符:$reverseArray
文章目录
$reverseArray
聚合运算符接受数组表达式作为参数,并返回一个元素按相反顺序排列的数组。
语法
{
$reverseArray: <array expression> }
参数可以是任何可以解析为数组的表达式。
使用
- 如果参数解析为
null
值或引用缺失字段,则$reverseArray
返回null
。 - 如果参数未解析为数组或
null
也未引用缺失字段,则$reverseArray
返回错误。 - 当参数为空数组时,
$reverseArray
返回空数组。 - 如果参数包含子数组,则
$reverseArray
仅对顶级数组元素进行操作,而不会反转子数组的内容。
例如:
例子 | 结果 |
---|---|
{ $reverseArray: { $literal: [ 1, 2, 3 ] } } |
[ 3, 2, 1 ] |
{ $reverseArray:{ $slice: [ [ "foo", "bar", "baz", "qux" ], 1, 2 ] } }} |
[ "baz", "ba] |
{ $reverseArray: null } |
null |
{ $reverseArray: { $literal: [ ] } } |
[ ] |
{ $reverseArray: { $literal: [ [ 1, 2, 3 ], [ 4, 5, 6 ] ] } } |
[ [ 4, 5, 6 ], [ 1, 2, 3 ] ] |
表中的示例使用了字面参数。如果字面参数是一个数组,为避免解析歧义,必须用 $literal
表达式封装字面数组,或保留指定参数列表的外层数组(例如 [ [ 1, 2, 3 ] ]
),以传递字面数组 [1, 2, 3]
。
举例
users