2014-11-22 48 views
1

我目前正在爲使用$ project操作符的Spring項目編寫MongoDB的聚合查詢。在此運算符中,我想比較兩個字段,以便返回結果作爲投影「匹配」鍵值。下面是MongoDB的殼相當於(工作): {$project: {matches: {$eq: ["$lastDate", "$meta.date"]} } }

我讀過春季數據MongoDB的文檔,發現約ProjectionOperator的「andExpression」的方法一些有用的信息,它使用規劃環境地政司。我調查的結果是Java代碼爲: new ProjectionOperation().andExpression("lastDate == meta.date").as("matches")

不幸的是我收到的例外: java.lang.IllegalArgumentException: Unsupported Element: [email protected] Type: class org.springframework.data.mongodb.core.spel.OperatorNode You probably have a syntax error in your SpEL expression!

雖然我查過遠,春天MongoDB的數據正確地處理所有算術運算符,但不能處理的比較的人。因此,我想問問是否有其他方法可以用Spring Data MongoDB創建這樣的查詢?或者,也許我不知道關於SpEL的重要事情?

回答

0

我通過傳遞JSON aggregate命令(爲了保留查詢的靈活性DBObjects創建)的MongoDB,即: MongoOperations#executeCommand(DBObject command)

解決這個問題
相關問題