Lan*_*eyo 5 mongodb mongo-shell mongodb-query
我在一些集合上将一些简单的游标定义为find().
cursor = db.students.find()
Run Code Online (Sandbox Code Playgroud)
学生有以下架构:
"_id" : 19,
"name" : "Gisela Levin",
"scores" : [
{
"type" : "exam",
"score" : 44.51211101958831
},
{
"type" : "quiz",
"score" : 0.6578497966368002
},
{
"type" : "homework",
"score" : 93.36341655949683
},
{
"type" : "homework",
"score" : 49.43132782777443
}
]
Run Code Online (Sandbox Code Playgroud)
我想迭代光标并打印文档.我试着这样:
cursor.forEach(function(o){print(o)})
Run Code Online (Sandbox Code Playgroud)
它只打印:
[对象]
如果我修改一个循环来选择一些简单的属性,它可以工作:
cursor.forEach(function(o){print(o._id)})
Run Code Online (Sandbox Code Playgroud)
虽然如果我把它更改为打印分数,它会打印出来:
[object Object],[object Object],[object Object],[object Object]
Run Code Online (Sandbox Code Playgroud)
是否有任何函数在mongodb shell中打印json文档?
sty*_*ane 10
我不确定为什么pretty
不适用于你的情况.
如果手动使用光标,则需要使用该printjson
功能
db.collection.find().forEach(printjson)
Run Code Online (Sandbox Code Playgroud)
或以下带过滤器表达式
db.collection.find({}, { "scores": 1, "_id": 0 }).forEach(printjson)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8655 次 |
最近记录: |