什麼是顯示在MongoDB的第n個對象/文件的命令?通過迭代在MongoDB中
說我有存儲在數據庫中4000點的對象,我想遍歷這些對象的所有4000命令適用於他們,我會做這樣的事情:
for(i=0;db.foo.count();i++){
do something
}
我應該i
是, i
是第一個索引。我如何遍歷MongoDB中的所有對象?
什麼是顯示在MongoDB的第n個對象/文件的命令?通過迭代在MongoDB中
說我有存儲在數據庫中4000點的對象,我想遍歷這些對象的所有4000命令適用於他們,我會做這樣的事情:
for(i=0;db.foo.count();i++){
do something
}
我應該i
是, i
是第一個索引。我如何遍歷MongoDB中的所有對象?
下面是簽名find
查詢。
var cursor = collection.find(query, [fields], options);
cursor.sort(fields).limit(n).skip(m).each(function(err, doc) {});
爲了訪問第n對象使用skip
。或者對於第n個對象後的批次,您可以使用limit
和skip
。對於大型收集使用stream
。
啊,很酷。因此,這個迭代通過'skip'命令遍歷所有對象,我認爲這是放置在大括號中的? – theGreenCabbage 2013-03-25 17:29:13
你可以舉一個例子說明如何使用skip()循環第一個對象,執行代碼,然後轉到第二個,執行代碼,轉到第三個,執行代碼等等? – theGreenCabbage 2013-03-25 17:45:30
看看代碼片段看看https://github.com/mongodb/node-mongodb-native – 2013-03-25 17:47:22
你能成爲一個更具體一點關於你打算做這些對象是什麼,什麼是你想要應用的命令? – raina77ow 2013-03-25 17:26:11
解釋有點長。我試圖比較兩個集合之間的另一個腳本所請求的HTTP標頭中的項目。第一個集合將成爲今天運行的一部分。第二次收集將是兩個月後的一次刮擦。這些對象有4000個左右,'url'作爲'_id'。我試圖嘗試的是在兩個月內比較標題對象。 – theGreenCabbage 2013-03-25 17:28:25