MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Holen Sie sich das n-te Element eines Arrays in MongoDB

Verwenden Sie $slice .

db.foo.find({ bar : "xyz" } , { my_array : { $slice : [n , 1] } } )

ruft das n-te Element des Arrays "my_array" aller Dokumente in der foo-Sammlung ab, wobei bar ="xyz".

Einige andere Beispiele aus der MongoDB-Dokumentation:

db.posts.find({}, {comments:{$slice: 5}}) // first 5 comments
db.posts.find({}, {comments:{$slice: -5}}) // last 5 comments
db.posts.find({}, {comments:{$slice: [20, 10]}}) // skip 20, limit 10
db.posts.find({}, {comments:{$slice: [-20, 10]}}) // 20 from end, limit 10

Welche Sie hier lesen können:http://www.mongodb.org/display/DOCS/Retrieving+a+Subset+of+Fields