聚合表达式中的变量
聚合表达式可以同时使用用户定义变量和系统变量。
变量可以保存任何BSON 类型的数据。要访问变量的值,请在变量名称前加上双美元符号 ($$
);即"$$<variable>"
。
如果该变量引用了一个对象,那么,要访问该对象中的特定字段,请使用点符号;即 "$$<variable>.<field>"
。
用户变量
用户变量名称可包含 ASCII 字符 [_a-zA-Z0-9]
和任意非 ASCII 字符。
用户变量名称必须以小写 ascii 字母 [a-z]
或非 ascii 字符开头。
系统变量
MongoDB 提供以下系统变量:
变量 | 说明 |
---|---|
返回当前日期时间值的变量。 NOW 会为部署的所有节点返回同一值,并在聚合管道的所有阶段保持不变。 | |
引用根文档,即当前正在聚合管道阶段处理的顶层文档。 | |
$redact 表达式的允许结果之一。 | |
$redact 表达式的允许结果之一。 | |
$redact 表达式的允许结果之一。 | |
该变量存储 Atlas Search 查询的元数据结果。在所有支持的聚合管道阶段中,设置为变量 | |
返回分配给当前用户的角色。 有关包含 7.0 版本中的新增功能。 |