当前位置: 首页 > 面试题库 >

如何通过mongoDB的键名检索值?

陆翰学
2023-03-14
问题内容

我是mongoDB的新手。我正在使用java和mongoDB。我有一个像

[{ "_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"));
}


 类似资料:
  • 如何在Laravel中检索数据。 我有表用户,其中我有字段parent_id,其中我显示其user_id的信息。 现在我想显示已登录用户的信息 我试过这个 我得到了选定的parent_id,现在我想要user_id的名字。 我在试这个 它得到一个错误。请告诉我如何在我的代码中写这个来获得父id的名称。

  • 问题内容: 我可以通过JNDI读取LDAP中存储的密码。但是结果是一些乱码。那么我该如何解密呢? 下面是我的代码: 有什么建议吗?? 提前谢谢了 凯文 问题答案: 您所看到的([B @ 1cd8669)是Java所说的“这是一个字节数组”。 存储的“密码”很可能是真实密码的哈希值或加密版本。顾名思义,密码散列是不可逆的,因此,如果LDAP存储散列,则您将无法查看用户的密码。 如果它是加密的,那么如

  • 我必须从remore服务器检索并下载本地环境证书链。我可以使用浏览器嵌入式服务来实现,但据我所知,这种方法对证书链不起作用(或者有一些瓶颈)。这就是我试图使用openssl以下命令的原因: 它将打印出相应的证书信息,如: 我怎样才能将它转换为.crt或.cer格式?我可以只复制/粘贴到文本文件的适当扩展名吗?如果是,链的起点和终点在哪里?

  • 我一直在试图找到通过外键从记录中获取所有数据的正确方法。我有一个简单的应用程序,用户可以将书籍添加到他们的“书架”。 这是我的桌子: 使用者 书 书架 BOOKSHELF_BOOKS 在我雄辩的模型中,一个有许多书,而属于,我已经在我的模型中设置了这些书。 用户创建一个“书架”并从图书列表中向其中添加图书。 我现在需要在书架上渲染用户的书籍。 当我使用类似bookshelf::find($id)的

  • 问题内容: 我的代码如下: rs 总是返回时不是null ,有人对此有想法吗?谢谢。 问题答案: 元数据接口实现由驱动程序供应商实现。某些驱动程序和某些数据库可能不支持它。这是来自Javadoc的文本:一些DatabaseMetaData方法以ResultSet对象的形式返回信息列表。常规的ResultSet方法(例如getString和getInt)可用于从这些ResultSet对象检索数据。如

  • 问题内容: 我正在尝试使用HashMap将唯一字符串映射到字符串ArrayList,如下所示: 基本上,我希望能够通过数字访问密钥,而不是使用密钥名称。我希望能够访问所述键的值,以对其进行迭代。我在想像这样的事情: 是否有捷径可寻? 问题答案: 您可以通过调用来遍历键,也可以通过调用来遍历项。遍历条目可能会更快。 如果要确保按插入键的顺序遍历键,请使用。 顺便说一句,我建议将地图的声明类型更改为。