[英]Getting the last values of a collection in NodeJS/Mongo
我正在嘗試獲取此數組上的最后一個值(最新更新),但下面的代碼只返回最后一個對象/所有對象。 如果我將限制增加到 5,我會得到 2 個蘋果 2 個香蕉 1 個櫻桃。 我只需要所有人的最后一個值。 我有 20 個水果和 150 多個條目。 我需要選擇 20 種水果的最新值。 謝謝您的幫助。
const last_finder = function (collectionName) {
MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db(dbName);
dbo.collection(collectionName).find({}, {sort:{_id:-1}}).limit(1).toArray(function(err, result) {
if (err) throw err;
console.log(result);
db.close();
});
});
}
The result:
{
_id: 0,
date: ' 01:30:51',
name: 'Banana',
value: '3.9'
},
{
_id: 1,
date: ' 01:33:51',
name: 'Apple',
value: '2.45'
},
{
_id: 2,
date: ' 01:34:50',
name: 'Banana',
value: '3.8'
},
{
_id: 3,
date: ' 01:34:59',
name: 'Cherry',
value: '6.21'
},
{
_id: 4,
date: ' 01:40:50',
name: 'Apple',
value: '2.55'
}
]
ZCCADCDEDB567ABAE643E15DCF0974E503Z 在限制和偏移方面有點奇怪,您需要在限制之后執行 function,
dbo.collection(collectionName).find({}, {sort:{_id:-1}}).limit(1).exec(function(e, data){
console.log(data)
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.