[英]Get most recent records from mongoDB
我的 mongoDB 集合中的数据如下所示
{ "_id" : "9115a01f-7ef8-4fb1-aabe-d9a2a7462095", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864785973")}
{ "_id" : "70533ece-509d-4a47-829f-0f31e62e1fb2", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864785973")}
{ "_id" : "62ad51f3-ad60-4f35-8018-81a8a29d0aa8", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864785973")}
{ "_id" : "9d51dda1-d8b4-46f5-81e3-37eb876f785f", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864785973")}
{ "_id" : "998e6a86-f8ba-4a5f-80f1-202518713c5e", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864811934")}
{ "_id" : "46a39fe7-1ac1-4a96-aec0-0b0b68518405", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864811934")}
{ "_id" : "d7072b68-6e98-4d14-b4ff-2ee7b0942f1d", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864811934")}
{ "_id" : "afd53c34-1c43-463e-a774-12145bb2a3a9", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864811934")}
我想获取所有具有最新时间戳all rows having timestamp = select max(timestamp) in collection
。 output 应如下所示:
{ "_id" : "9115a01f-7ef8-4fb1-aabe-d9a2a7462095", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864785973")}
{ "_id" : "70533ece-509d-4a47-829f-0f31e62e1fb2", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864785973")}
{ "_id" : "62ad51f3-ad60-4f35-8018-81a8a29d0aa8", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864785973")}
{ "_id" : "9d51dda1-d8b4-46f5-81e3-37eb876f785f", "deviceSerial" : "S121F1194200003", "cbsdId" : "2ABOF-G1-BN3ASI001S121F1194200003", "timestamp" : NumberLong("1652864785973")}
我是 mongo 语法的新手,我试了一下,但无法想出使用单个查询获得上述结果的方法。 因此,到目前为止,我可以使用以下命令按排序顺序获得结果: db.getCollection('demo').aggregate([{$match:{"deviceSerial":"S121F1194200003"}}, {$sort: {timestamp:-1}}])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.