MongoDB-聚合操作表达式

字段路径表达式

  • $<filed>: 使用 $ 来指示字段路径
  • $<filed>.<sub-field>: 使用 $. 来指示内嵌文档字段路径

示例

添加测试数据:

db.person.insert([
    {name:{firstName:'Jonathan', lastName:'Lee'}, age:18},
    {name:{firstName:'Amelie', lastName:'Tang'}, age:19}
])
  • $name
  • $name.firstName
db.person.aggregate([
    {
        $project: {
            _id: 0,
            myName: '$name.firstName',
            myName2: '$name'
        }
    }
])

系统变量表达式

  • $$CURRENT: 表示当前操作的文档

示例

  • $$CURRENT.name -> 等价于 $name
db.person.aggregate([
    {
        $project: {
            _id: 0,
            myName: '$$CURRENT.name'
        }
    }
])

常量表达式

  • $literal: <value>: 表示常量 <value>

示例

  • $literal: '$name': 表示常量字符串 $name
db.person.aggregate([
    {
        $project: {
            _id: 0,
            myName: {$literal: 'BNTang'}
        }
    }
])
posted @ 2022-08-14 16:34  BNTang  阅读(52)  评论(0)    收藏  举报