您可以在 MongoDB Playground 中使用 MongoDB CRUD 操作符读取集合中的文档:
注意
您可以打开预先配置为搜索集合的 JavaScript Playground ,方法是将鼠标悬停在导航面板中的 Documents标签上,然后单击出现的图标。
先决条件
如果尚未执行此操作,则必须先完成以下先决条件,然后才能使用 MongoDB Playground 读取文档:
使用VS Code创建文档,或使用其他方法在集合中创建文档。
读取一个文档
若要读取一个文档,请在 Playground 中使用以下语法:
db.collection.findOne( { <query> }, { <projection> } )
如果有多个文档满足查询条件,该方法会根据自然顺序返回第一个文档, 自然顺序反映了磁盘上文档的顺序。
要了解有关此方法参数的更多信息,请参阅 MongoDB 手册中的findOne() 。
要运行Playground,请按 Playground 视图右上角的按钮。VS Code扩展会拆分 Playground 并在 Playground Results 窗格中输出 Playground 的结果。如果禁用了分割视图, VS Code Extension 则会在新的标签页中输出 Playground 的结果。
您可以编辑从 findOne() 或 find() 操作返回的任何 JSON 文档。
例子
要运行此示例,请清除模板 Playground(如果已加载),从空白 MongoDB Playground 开始。
如下示例:
切换到
test数据库。读取
test.sales集合中与查询匹配的一个文档。
use("test"); db.sales.findOne( { "_id" : 1 }, { "_id" : 0 } );
当您按下按钮时, VS Code Extension 会分割 Playground 并在 Playground Result 窗格中输出以下文档。如果已禁用分割视图, VS Code扩展则会在新的标签页中输出以下文档。如果您手动移动 Playground 结果, VS Code Extension 会在该标签页中显示结果。
{ item: 'abc', price: 10, quantity: 2, date: 2014-03-01T08:00:00.000Z }
阅读大量文档
要读取多份文档,请在 Playground 中使用以下语法:
db.collection.find( { <query> }, { <projection> } )
有关此方法参数的详细说明,请参阅 MongoDB 手册中的 find()。
要运行Playground,请按 Playground 视图右上角的按钮。VS Code扩展会拆分 Playground 并在 Playground Results 窗格中输出 Playground 的结果。如果禁用了分割视图, VS Code Extension 则会在新的标签页中输出 Playground 的结果。
例子
要运行此示例,请清除模板 Playground(如果已加载),从空白 MongoDB Playground 开始。
如下示例:
切换到
test数据库。读取
test.sales集合中与查询匹配的所有文档。
use("test"); db.sales.find( { "item" : "abc" }, { "price" : 1 } );
当您按下按钮时, VS Code Extension 会分割 Playground 并在 Playground Result 窗格中输出以下文档。如果已禁用分割视图, VS Code扩展则会在新的标签页中输出以下文档。如果您手动移动 Playground 结果, VS Code Extension 会在该标签页中显示结果。
[ { _id: 2, price: 10 }, { _id: 6, price: 10 }, { _id: 9, price: 10 }, { _id: 1, price: 10 } ]
使用游标读取文档
当 Playground 中的最后一个表达式计算结果为游标(例如db.collection.find()或db.collection.aggregate()调用),Visual Studio Code 将在游标结果文档浏览器视图中打开结果。
在此视图中,您可以:
使用视图顶部的分页控件对结果进行翻页。
以类似表格的列表查看每个文档。默认下,文档以Shell语法显示。
注意
对于不生成带有文档列表的游标的操作,Visual Studio Code 仍使用常规结果编辑器,例如以 $out 或 $merge 结尾的聚合,或不是文档的结果,例如字符串、数字、或其他标量值。
例子
要运行此示例,请清除模板 Playground(如果已加载),从空白 MongoDB Playground 开始。
如下示例:
切换到
test数据库。读取
test.sales集合中与查询匹配的所有文档。返回一个游标作为最后一个表达式。
use("test"); db.sales.find( { "price": { $gte: 10 } }, { "price": 1 } );
单击该按钮时,Visual Studio Code 会打开一个文档浏览器标签页,其中显示游标返回的文档,并在视图顶部显示分页控件。
将整个游标作为数组返回
如果您希望将游标转换为数组并直接在 Playground Results 编辑器而不是文档浏览器中查看,请在游标上调用 toArray() 作为 Playground 中的最后一个表达式:
let cursor = db.collection.find({ <query> }); cursor.toArray();
当您按下按钮时, VS Code Extension 会分割 Playground 并在 Playground Result 窗格中输出以下文档。如果已禁用分割视图, VS Code扩展则会在新的标签页中输出以下文档。如果您手动移动 Playground 结果, VS Code Extension 会在该标签页中显示结果。
[ { "_id": 2, "price": 10 }, { "_id": 3, "price": 20 }, { "_id": 6, "price": 10 }, { "_id": 9, "price": 10 } ]
了解详情
有关游标方法和行为的更详细文档,请参阅: