当前位置:  开发笔记 > 编程语言 > 正文

如何在mongo shell中查看文档字段?

如何解决《如何在mongoshell中查看文档字段?》经验,为你挑选了3个好方法。

有没有办法在mongo的shell中找出文档中的字段/键?举个例子,假设我们有一个类似(伪代码)的文档:

{
    "message": "Hello, world",
    "from": "hal",
    "field": 123
}

我想在shell中运行一个命令,返回该文档中的字段/键列表.例如,像这样:

> var message = db.messages.findOne()
> message.keys()
... prints out "message, from, field"

谢谢!



1> Will Fitzger..:

更简单:

Object.keys(db.messages.findOne())


希望谷歌索引评论...我发现这一点在Mongo中寻找像SQL的"DESCRIBE".

2> Shane Andrad..:

一个for ... in循环应该做的伎俩:

> var message = db.messages.findOne();
> for (var key in message) {
... print(key);
... }



3> Manohar Redd..:

其他答案是正确的。

但是,由于我是一个全新的人,所以我不明白上述命令在何处以及如何执行。

下面从我的github帮助了。
在Windows上:在命令提示符(cmd)中运行此代码。
在Mac或Linux上:在终端窗口中运行此代码。

// ------------
// start mongo client
mongo

// ------------

// list all databases
show dbs
// NOTE: assume one of the databases is myNewDatabase

// use the 'myNewDatabase' database
use myNewDatabase

// ------------

// show all collections of 'myNewDatabase' database
show collections
// NOTE: assume one of the collections is 'myCollection'

// show all documents of 'myCollection' collection
db.myCollection.find()

// ------------

// field keys
Object.keys(db.myCollection.findOne());

// values
db.myCollection.find().forEach(function(doc) {
    for (field in doc) {
        print(doc[field]);
    }
});

// ------------

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有