$documents(字面量文档)

最后更新:2026-10-09

$documents(字面量文档)

$documents 直接返回给定的字面量文档数组,不访问任何集合,是管道的字面量输入。它必须作为管道第一个阶段使用,常用来构造测试数据或对常量数组做后续表达式运算。每条文档按原样输出到后续阶段。

分类核心阶段
MongoDB 版本5.2+
示例语言mongosh (Shell)

📝 语法

{ $documents: [ { <文档1> }, { <文档2> }, ... ] }

⚙️ 参数

文档数组要输出的字面量文档列表。

返回值:字面量文档流

▶ 示例

请在本地安装的 mongosh 中执行以下命令(需已启动 mongod):

// $documents:用字面量数据验证表达式
db.aggregate([
  { $documents: [{ x: 1 }, { x: 2 }] },
  { $addFields: { y: { $add: ['$x', 1] } } }
])

运行结果:

{ "x": 1, "y": 2 }
{ "x": 2, "y": 3 }

📌 注意事项

更多实战案例即将上线,敬请期待。

📚 相关教程

❓ 常见问题

Q$documents 能用在管道中间吗?
A不能,它必须是最开始的阶段,之后可接其他阶段。
Q$documents 有什么用?
A构造测试数据、在 mongosh 里验证聚合表达式,不需要真实集合。
Qdb.aggregate 和 db.coll.aggregate 区别?
Adb.aggregate 不带集合运行,首个阶段必须是 $documents 或 $currentOp 等特殊阶段。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏