MongoDB中条件式将字段设为“缺失”的标准方法咨询
MongoDB条件移除字段的实现疑问
当前尝试的更新语句
{ $set: { cheese: { $cond: [ { $eq: [{ $type: "$cheese" }, "missing"] }, "$cheese", 7, ], }, }, }
背景与问题
- 目标是移除指定字段,但受条件限制无法直接使用
$unset,只能通过$set操作实现 - 尝试将字段值设为
undefined时,会被自动转换为null,达不到移除字段的效果 - 目前找到一个可行方案:将字段赋值为一个不存在的字段(比如
$a_field_that_does_not_exist),确实能实现字段移除的目的
疑问
这种通过$set赋值不存在字段来移除目标字段的方式,算不算标准做法?
内容的提问来源于stack exchange,提问作者Bear Bile Farming is Torture
相关产品推荐
相关产品推荐

