2015-08-20 83 views
0

我正在使用SpagoBI和MongoDB。像鏈接[1]中提到的那樣,我可以在我的MongoDB數據庫上使用腳本.js來獲得結果。 我需要做的是合併以下兩個查詢的結果:如果我把類似MongoDB:如何獲取腳本中兩個集合的最後值?

var query= query1 + query2; 

我得到了錯誤

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); 

query has no method 'forEach' at serializeResult 

任何想法如何去做? 在此先感謝您的幫助!

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

+0

您對這兩個查詢的結果有什麼期待? 單個對象(type?),一個數組.. ..? – codename44

+0

包含兩個查詢結果的數組 – sabrina2020

+0

你可以嘗試'var query = query1.concat(query2);' – codename44

回答

1

嘗試

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

這裏會發生什麼事是toArray()用於將結果光標到文檔標準的JavaScript陣列(轉換在這種情況下,數組只有一個入口,因爲你使用limit(1))。然後使用標準的Javascript數組方法concat將一個數組附加到另​​一個數組,並將其存儲在新數組results中。

然後可以根據需要使用該數組。

相關問題