1

次のデータが与えられます:

{
  _id: '123',
  name: 'Foobar',
  friends: [
    { name: 'a' },
    { name: 'b' },
    { name: 'c' },
    { name: 'd' },
    { name: 'e' }
  ]
}

MongoDBにクエリを実行して、オフセット付きのリストを返す方法はありますかfriends?たとえば、配列の最初の2つのフレンド(「a」と「b」)をスキップして、「c」、「d」、「e」のみを返しますか?

使ってみまし$sliceたが、「制限」も必要なようです。

db.users.findOne({ _id: '123' }, { friends: { $slice: [2,-1] } })

「制限」(-1上記の例)は正の整数である必要があるため、これは機能しません。

4

1 に答える 1

2

それはひどくエレガントではありませんが、事実上制限にならないように十分な大きさの制限値を提供するだけです。

db.users.findOne({ _id: '123' }, { friends: { $slice: [2,1000000000] } })
于 2012-08-12T16:31:47.543 に答える