Node.js 对于distinct+;猫鼬

Node.js 对于distinct+;猫鼬,node.js,mongodb,rest,mongoose,mongodb-query,Node.js,Mongodb,Rest,Mongoose,Mongodb Query,我正在尝试进行一个查询,以输出具有特定元素的文档,但也仅具有另一个唯一元素,例如: Temp.find({ UId: UserID }).sort({ "created_at" : -1 }).exec( function (err, data) { console.log(data + " " + err); callback(data); }); }); 返回以下内容: { "updatedAt": "2017-05-23T18:18:19.000Z"

我正在尝试进行一个查询,以输出具有特定元素的文档,但也仅具有另一个唯一元素,例如:

 Temp.find({ UId: UserID }).sort({ "created_at" : -1 }).exec( function (err, data) {
    console.log(data + "     " + err);
    callback(data);
  });
}); 返回以下内容:

{
    "updatedAt": "2017-05-23T18:18:19.000Z",
    "created_at": "2017-05-23T18:18:19.000Z",
    "UId": "58f8954c3602b80552b6f1fb",
    "value": 69,
    "SerialNumber": "IIOJOIMJ",
    "_id": "59247cebd96d5406651c791e",
    "__v": 0
  },
  {
    "updatedAt": "2017-05-23T16:34:22.000Z",
    "created_at": "2017-05-23T16:34:22.000Z",
    "UId": "58f8954c3602b80552b6f1fb",
    "value": 70,
    "SerialNumber": "IIOJOIMJ",
    "_id": "5924648e56628d005ad15f0e",
    "__v": 0
  }
但是我希望查询只返回不同的元素,以便只返回两个文档中的一个。
我试着这样做:

Temp.find({ UId: UserID }).sort({ "created_at" : -1 }).distinct('SerialNumber', function (err, data) {

    console.log(data + "     " + err);
    callback(data);
  });
但这会使我的应用程序崩溃。我怎样才能最好地解决这个问题

谢谢

编辑


我查看了@gaganshera解决方案,它是有效的!但是,是否也可以将文档的其余部分与它一起归档?

使用
distinct
功能,您可以像这样指定条件以及distinct列

Temp.distinct('SerialNumber', { UId: UserID })

指定错误消息或堆栈跟踪可能很有用。奇怪的是,我没有得到任何错误消息或堆栈跟踪,而我却要求它完美!您可能知道我如何显示文档的其余部分吗?