MongoDB: 如何在脚本中获取两个集合的最后一个值?

MongoDB: how to get the last values of two collections in a script?

我在 MongoDB 中使用 SpagoBI。 就像 link [1] 中提到的那样,我可以在我的 MongoDB 数据库上使用脚本 .js 来获取结果。 我需要做的是合并以下两个查询结果:

var query1=db['cygnus_/kurapath_enocean_switch2a_enocean'].find().sort({ recvTime : -1 }).limit(1) ;
var query2 = db['cygnus_/kurapath_enocean_switch2b_enocean'].find().sort({ recvTime : -1 }).limit(1);

如果我输入类似

var query= query1 + query2;

我收到错误:

query has no method 'forEach' at serializeResult 

知道怎么做吗? 预先感谢您的帮助!

[1] http://wiki.spagobi.org/xwiki/bin/view/spagobi_server/data_set

尝试

var results = query1.toArray().concat(query2.toArray());

这里发生的是 toArray() 用于将结果游标转换为标准 Javascript 文档数组(在本例中数组只有一个条目,因为您使用了 limit(1)) .然后使用标准的Javascript数组方法concat将一个数组附加到另​​一个数组并将其存储在新数组results.

这个数组可以随心所欲地使用。