mongodb 如何在mongo shell脚本中打印/使用一个键的特定值?

bq3bfh9z  于 2023-03-01  发布在  Go
关注(0)|答案(1)|浏览(195)

我在shell中运行以下代码;

const records = db.issues.find().limit(1);

print('Record:', records);
print('ID:', records.id);

返回一条记录;

Record: [
  {
    _id: ObjectId("63f94e684902f564f7d418ca"),
    id: 1,
    status: 'New',
    owner: 'Ravan',
    effort: 5,
    created: ISODate("2019-01-15T00:00:00.000Z"),
    due: null,
    title: 'Error in console when clicking Add',
    description: 'Steps to recreate the problem:\n'
  }
]

所以我想最后一句台词会产生;

ID: 1

它只生成ID:,没有错误,我错过了什么?
下一个问题是,如果返回了多条记录,如何遍历游标?
谢尔斯角

xeufq47z

xeufq47z1#

find()方法返回一个游标,可以遍历该游标以检索每个文档。在您的示例中,records是一个游标,它返回一个包含一个文档的数组。要打印/使用文档中某个键的特定值,您需要使用点表示法或括号表示法访问该值:

print('ID:', records[0].id);

遍历游标时,可以使用forEach()(如果返回多条记录):

const records = db.issues.find();

records.forEach(function(record) {
  print('ID:', record.id);
});

相关问题