MongoDB聚合:$documents

本文详细介绍了MongoDB中$documents阶段的使用方法,如何在聚合管道中创建测试数据,以及如何在$lookup阶段利用$documents作为数据源进行数据关联。重点展示了$documents如何处理输入对象数组并影响lookup操作的输出结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

$documents阶段可以根据输入值返回字面意义的文档。

语法

{
   
    $documents: <表达式> }

$documents接受可解析为对象数组的任何有效表达式,包括:

  • 系统变量,如 $$NOW $$SEARCH_META

  • $let 表达式

  • $lookup 表达式作用域中的变量

没有指向当前文档的表达式(如 $myField$$ROOT)将导致错误。

举例

测试管道阶段

下面例子为管道阶段创建测试和调试数据,无需创建测试集合。

db.aggregate(
   [
      {
   
    $documents: [ {
   
    x: 10 }, {
   
    x: 2 }, {
   
    x: 5 } ] },
      {
   
    $bucketAuto: {
   
    groupBy: "$x", buckets: 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

原子星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值