MongoDB - 投影一个并不总是存在的字段

Pet*_*son 7 projection mongodb

有没有办法投影可能存在或不存在的字段?比如将它定义为null或undefined?

例如,我正在进行查询:

      $project: {
         date: 1,
         name: "$person.name",
         age: "$person.age"
      }              
Run Code Online (Sandbox Code Playgroud)

并非所有文件都保证有$ person.age,但不是没有年龄的人返回{date:Today,name:"Bill"},我想说{date:Today,name:"比尔",年龄:无效}.或类似的东西.

有没有比仅仅迭代数据更好的方法并创建字段(如果它们不存在)?

kar*_*ala 15

使用 $ifNull

  $project: {
     date: 1,
     name: "$person.name",
     age: { $ifNull: [ "$person.age", "null" ] }
  }  
Run Code Online (Sandbox Code Playgroud)

你可以在这里找到更多相关信息