我是mongoDB的新手.我正在使用java和mongoDB.我有一个类似json的,

[{ "_id" : { "$oid" : "4ceb753a70fdf877ef5113ca"} , "HomeTown" : "AA" , 
"PhoneNumber" : { "CustName" : "xxx" , "Number" : "3403290"},
"MobileNumber" : { "CustName" : "yyy" , "Number" : "9323304302"}}]

    [{ "_id" : { "$oid" : "4ceb753a70fdf877ef5113ca"} , "HomeTown" : "AA" , 
"PhoneNumber" : { "CustName" : "xxx" , "Number" : "3403290"},
"MobileNumber" : { "CustName" : "yyy" , "Number" : "9323304302"}}]

    [{ "_id" : { "$oid" : "4ceb753a70fdf877ef5113ca"} , "HomeTown" : "BB" , 
"PhoneNumber" : { "CustName" : "xxx" , "Number" : "3403290"},
"MobileNumber" : { "CustName" : "yyy" , "Number" : "9323304302"}}]

    [{ "_id" : { "$oid" : "4ceb753a70fdf877ef5113ca"} , "HomeTown" : "BB" , 
"PhoneNumber" : { "CustName" : "xxx" , "Number" : "3403290"},
"MobileNumber" : { "CustName" : "yyy" , "Number" : "9323304302"}}]

在一个集合中,所有文档都有不同的HomeTown,我只知道键名HomeTown,如何获得HomeTown个值?

在mongo网站上,我只能找到find()findOne().

谢谢

推荐答案

find()美元就够了.

db.CollectionName.find({},{HomeTown:1})

在java中,它将是:

BasicDBObject query = new BasicDBObject();
BasicDBObject field = new BasicDBObject();
field.put("HomeTown", 1);
DBCursor cursor = db.getCollection(collectionName).find(query,field);
while (cursor.hasNext()) {
    BasicDBObject obj = (BasicDBObject) cursor.next();
    result.add(obj.getString("HomeTown"));
}

Mongodb相关问答推荐

所有文档中嵌套 struct 中的条件匹配-mongodb

根据参考图计算子文档列表的最大值

Mongoose 聚合和多级组

MongoDB 列表 - 获取每第 N 个元素

Node.js MongoDB Upsert 更新

如何在 Mongoose 中更新数组值

MongoDB:自动生成的 ID 为零

无法连接到远程 mongodb 服务器

将 mongodb 聚合框架结果导出到新集合

如何根据其他字段添加条件模式?

具有 AWS 云形成和自动zoom 的 Mongodb 集群

如何在 MongoDB 的 $match 中使用聚合运算符(例如 $year 或 $dayOfMonth)?

我如何使用 Twitter 的流 api 中的推文并将它们存储在 mongodb 中

mongodb: UnknownError assertion src/mongo/db/server_options_helpers.cpp:355

MongoDB MapReduce - 发出一个键/一个值不调用reduce

MongoDB备份计划

将新值推送到 mongodb 内部数组 - mongodb/php

Mongodb 按字段名称查找任何值

show dbs 给出Not Authorized to execute command错误

Spring Data MongoDB - 在哪里以编程方式为 Mongo 集合创建索引?