2016-11-23 39 views
0

嗨,我是Nodejs和mongodb的新成員。需要幫助來從我的收藏中檢索最後一條記錄。我有這樣的代碼正確now`檢索nodejs中的最後一個mongodb條目

db.collection('bbb1collection', function(err, collection) { 
    collection.find({}).sort({_id:-1}).limit(1).toArray(function(err, results) { 
     path = results; 
    console.log(results); 

}

+0

是什麼你的console.log顯示?你應該把你的代碼放在問題中而不是圖像中。 – dyouberg

+0

請勿在圖片中引用代碼。編輯你的作品會很麻煩... –

+0

抱歉,我的第一個問題。控制檯不顯示任何東西 – user7201227

回答

1

看看這個:

db.collection('bbb1collection', function(err, collection) { 
    collection 
    .find() 
    .sort({$natural: -1}) 
    .limit(1) 
    .next() 
    .then(
     function(doc) { 
     console.log(doc); 
     }, 
     function(err) { 
     console.log('Error:', err); 
     } 
    ); 
}); 

瞭解$naturalhere

0

使用此查詢:

db.users.find().limit(1).sort({$natural:-1}) 
+0

我很新。你能否詳細說明一下? – user7201227

+0

當然。由於每個mongo對象都有_id,它通常是基於時間戳的值,所以它總是按asc順序排序,最後一個排在頂部。所以我們通過在$ natural操作符中指定-1來反向排序,這會告訴mongo使用_id字段進行排序。同樣爲了可讀性,您可以將限制放在最後,無論是訂購還是性能問題。因此它與db.users.find()。sort({_ id: - 1})。limit(1);相同。 –

相關問題