首页 > 解决方案 > 切片 MongoDB 数组以获取所有从指定索引开始

问题描述

我知道这slice允许指定我们需要的项目的开始和数量。但是如何从特定位置开始获取数组中的所有元素?像这样的东西

{fieldToProject: { $slice: [ 1, { $size: '$fieldToProject' } ], }}

这应该给我从位置 1 开始的所有元素

标签: mongodb

解决方案


您可以使用$slice聚合运算符。

db.collection.aggregate([
  {
    $project: {
      item: 1,
      slicedColors: {
        $slice: [
          "$colors",
          3,
          {
            $size: "$colors"
          }
        ]
      }
    }
  }
])

在这里试试


推荐阅读