切片MongoDB数组以获取从指定索引开始的所有数据

切片MongoDB数组以获取从指定索引开始的所有数据,mongodb,Mongodb,我知道slice允许指定我们需要的项目的开始和数量。但如何从特定位置获取数组中的所有元素?像这样的 {fieldToProject: { $slice: [ 1, { $size: '$fieldToProject' } ], }} 这将为我提供从位置1开始的所有元素您可以使用$slice聚合运算符 db.collection.aggregate([ { $project: { item: 1, slicedColors: { $slice:

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

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

这将为我提供从位置1开始的所有元素

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

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

试试看

谢谢你接受了答案。你也能投票吗。