0
我在DB中擁有一個集合,並且可以很好地將其獲取到DBCollection。 但是,當我嘗試使用字符串字段查詢它時,它不返回任何結果。Java MongoDB無法使用集合中的字符串條件進行查詢
但是,當我使用Integer字段進行查詢時,該查詢返回同一數據集的結果。
這裏是我的考驗:
// It doesn't work this way, cursor has nothing
DBObject allQuery = new BasicDBObject();
allQuery.put("data", "someName");
List cursor = collection.find(allQuery).toArray();
// This time it works, only change is that I query with an Integer value now
DBObject allQuery = new BasicDBObject();
allQuery.put("xyz", 1);
List cursor = collection.find(allQuery).toArray();
這是從數據庫返回的集合:
{ "_id" : { "$oid" : "574c780aa8268280d1b53162"} , "id" : 1 , "name" : "\"Some name\"" , "city" : "\"Ankara\"" , "country" : "\"Turkey\""}
我懷疑那些字符串表示用「\」字符,但找不到任何解決方法,它無論是。
我已經檢查了幾十篇文章和MongoDB文檔,但似乎沒有什麼特別的。但有趣的是它不起作用。
希望你能告訴我一個方法來解決這個問題。 謝謝。
當我插入,我只是簡單地推列表到DB,爲什麼這些報價存在? –
neocorp
@NiyaziErdogan這些對象是如何生成的? – shmosel
我從CSV文件中讀取它們並將其添加到列表中,而無需進行任何修改。 – neocorp