2013-08-03 19 views
1

我的目標是按照「page_length」降序的順序將集合1中的每個項目複製到集合2,以使新集合具有最大的page_length字段,其次是第二大的字段等等。有沒有辦法在MongoDB的排序結果集上運行foreach()?

我試着在蒙戈如下:

db.mycollection1.find().sort({page_length:-1}).foreach(function(d) { db.mycollection2.insert({"field1":d.field1, "field2":d.field2}); }) 

明白了的DBQuery沒有法 '的foreach' 錯誤。我知道foreach()是find()的一個函數,但我希望找到解決方法。我甚至嘗試了以下內容:

db.mycollection1.aggregate({$sort:{page_length:-1}}).foreach(function(d) { db.mycollection2.insert({"field1":d.field1, "field2":d.field2}); }) 

任何想法?

回答

1

嘗試:

db.mycollection1.find().sort().forEach(function(e) { ... }) 
1

首先,您需要在這裏進行排序我有那種與客戶的姓試試下面的查詢

db.customers.find()排序({名字:1})。的forEach (function(doc){print(「Customer name:」+ doc.lastname)});

相關問題