sql >> Databáze >  >> NoSQL >> MongoDB

Jak získat stránkovaná/rozřezaná data pole vnořených dokumentů v kolekci mongo?

Možná nerozumím vaší otázce v plné hloubce, ale vypadá to jako $slice je droid, kterého hledáte:

> db.page.find()
{ "_id" : ObjectId("51f4ad560364f5490ccebe26"), "fiTpcs" : [ "uuid1", "uuid2", "uuid3", "uuid4", "uuid5" ], "fiTpcsCnt" : 2 }
> db.page.find({}, {"fiTpcs" : {$slice : 3}})
{ "_id" : ObjectId("51f4ad560364f5490ccebe26"), "fiTpcs" : [ "uuid1", "uuid2", "uuid3" ], "fiTpcsCnt" : 2 }
> db.page.find({}, {"fiTpcs" : {$slice : [1,3]}})
{ "_id" : ObjectId("51f4ad560364f5490ccebe26"), "fiTpcs" : [ "uuid2", "uuid3", "uuid4" ], "fiTpcsCnt" : 2 }


  1. MongoDB:Seřaďte podle existujícího pole a poté podle abecedy

  2. Vysoce výkonné clustery MongoDB na Amazon EC2

  3. Nelze vyřešit odmítnutí slibu a odeslat pole jako odpověď

  4. $elemMatch s výrazem