2013-12-23 109 views
0

我正在使用數據庫MongoDB,我試圖運行一個查詢來檢查兩件事情。MongoDB查詢無效

查詢是時間戳大於時間,服務器不等於名稱。

它看起來像這樣if語句

if (timestamp > date && !server.equalsIgnoreCase("name") 

這是我使用的查詢

List<BasicDBObject> queryList = new ArrayList<>(); 
queryList.add(new BasicDBObject("timestamp",new BasicDBObject("$gt", lastCheck))); 
queryList.add(new BasicDBObject("server",new BasicDBObject("$not","Dev"))); 
BasicDBObject query = new BasicDBObject("$and",queryList); 

運行代碼

Caused by: com.mongodb.CommandResult$CommandFailure: command failed [count]: {       "serverUsed" : "localhost/127.0.0.1:27017" , "errmsg" : "exception: invalid use of $not" , "code" : 13041 , "ok" : 0.0} 
當我收到此錯誤代碼

我知道我使用$ not操作符錯誤,但希望有人可以幫助我

回答

2

只需使用$ne(對於不等於)而不是如here所示。

+0

完美!非常感謝你 – PHPDEV

+0

很高興幫助。請接受答案,以便將來的其他人知道它適合你。祝你的項目好運! – Vidya