如何将mongodb查询的结果保存到javascript变量中?

时间:2012-12-02 19:10:22

标签: javascript mongodb

这里有一些关于如何将查询结果保存到javascript varialbe的问题,但我只是无法实现它们。关键是我有一个很难查询,所以这个问题在我看来是独一无二的。

这是问题所在。我有一个名为“drives”的集合和一个名为“driveDate”的密钥。我需要保存1个日期最小的变量,其他日期最大的变量。

最小日期的查询是:

> db.drives.find({},{"_id":0,"driveDate":1}).sort({"driveDate":1}).limit(1)

结果是:

{ "driveDate" : ISODate("2012-01-11T17:24:12.676Z") }

我如何将其保存到变量中,我可以执行以下操作:

tmp = db.drives.find({},{"_id":0,"driveDate":1}).sort({"driveDate":1}).limit(1)

感谢!!!

2 个答案:

答案 0 :(得分:11)

假设您正在尝试在shell中执行此操作:

 tmp = db.drives.find({}, {_id:0, driveDate:1}).sort({driveDate:1}).limit(1).toArray()[0]

find返回一个需要迭代的游标以检索实际文档。在游标上调用toArray会将其转换为docs数组。

答案 1 :(得分:3)

经过一段时间的计算,我得到了解决方案。这是为了将来参考:

var cursor = db.drives.find({},{"_id":1}).sort({"driveDate":1}).limit(1)

然后我可以像这样从光标中获取文档

var myDate = cursor.next()

就是这样。谢谢你的帮助