Mongodb:查询高级结构化集合

时间:2013-02-28 13:01:33

标签: mongodb

这是我的Mongo数据库结构。

{
  "_id": "10280",
  "city": "NEW YORK",
  "state": "NY",
  "pop": 5574,
  "loc": [
{
    class: 4
    dept:comp
},
{
    class: 5
    dept:comp

}
{
    class: 5
    dept:comp

}
  ]
}

如您所见,高水平和低水平相关。

如果城市是纽约市并且班级是“5”,我需要查询所有文件 我正在使用Java与Mongo DB 我试过这种方式

 BasicDBObject query = new BasicDBObject();
        query.put(city, "NEW YORK");
          query.put(class, "5");    

但它不起作用。任何人都可以帮忙

1 个答案:

答案 0 :(得分:3)

您错过了loc密钥的class级别,并且您的报价混乱了。

BasicDBObject query = new BasicDBObject();
query.put("city", "NEW YORK");
query.put("loc.class", 5);
DBObject doc = coll.findOne(query);