2017-04-13 39 views
0

我有一個蒙戈DB查詢來獲取一些數據如下圖所示使用一個變量作爲地圖的關鍵MongoDB的Groovy的查詢

collection.find(lastUpdated: ['$gte': startDate.toLong(), '$lt': endDate.toLong()], resource: ['$gt': limit]).findAll().toList() 

resource是的值可以是一個動態的領域: parameter1parameter2。 .. 等等。

我通過resource作爲此查詢中的方法參數。

有人可以推薦一些辦法,通過它我可以動態地在我的查詢中使用resource沒有硬編碼它作爲(paramter1parameter2parameter3 ...)值

回答

1

是的,你就要成功了,你只需要通過它作爲變量並在Map上使用()語法來指示您正在將變量用作鍵而不是文字值。

改變這一點:

resource: ['$gt': limit] 

這樣:

(resource): ['$gt': limit] 

全面查詢:

def resource = "parameter1"; //or parameter2 ... 
collection.find(lastUpdated: ['$gte': startDate.toLong(), '$lt': endDate.toLong()], (resource): ['$gt': limit]).findAll().toList() 
+0

所有我錯過了()...好謝謝:): ) – JavaAppUser

+0

歡迎你;它發生在使用新語言時;) – dsharew

相關問題