ITPub博客

首页 > 数据库 > 国内数据库 > 技术干货| MongoDB如何查询Null或不存在的字段?

技术干货| MongoDB如何查询Null或不存在的字段?

翻译 国内数据库 作者:MongoDB中文社区 时间:2022-05-07 16:03:10 0 删除 编辑

在MongoDB中不同的查询操作符对于null值处理方式不同。

本文提供了使用mongo shell中的 db.collection.find()  方法查询null值的操作案例。案例中使用的inventory集合数据可以通过下面的语句产生。

db . inventory . insertMany ([
  { _id : 1 , item : null },
  { _id : 2 }
])


等值匹配


当使用**{item:null}作为查询条件的时候,返回的是item字段值为null的文档或者不包含item**字段的文档。

db . inventory . find ( { item : null } )

该查询返回inventory集合中的所有文档。


类型检查


当使用**{item:{$type:10}}**作为查询条件的时候,仅返回item字段值为null的文档。item字段的值是 BSON TYPE   NULL(type number 10)。

db . inventory . find ( { item : { $type : 10 } } )

该查询仅返回item字段值为null的文档。


存在检查


当使用**{item:{$exists:false}}作为查询条件的时候,返回不包含item**字段的文档。

db . inventory . find ( { item : { $exists : false } } )

该查询仅返回不包含item字段的文档。


相关文档

$type

$exists

原文链接:

https://www.mongodb.com/docs/manual/tutorial/query-for-null-fields/


关于作者:张芷嘉

MongoDB中文用户文档·CRUD操作章节负责人

喜欢跑步,做饭,睡觉,出门三公里就困。使用MongoDB两年,倍感丝滑。


为了让社区组委会成员和志愿者朋友们灵活参与,同时我们为想要深度参与社区建设的伙伴们开设了“招募通道”,如果您想要在社区里面结交志同道合的技术伙伴,想要通过在社区沉淀有价值的干货内容,想要一个展示自己的舞台,提升自身的技术影响力,即刻加入社区贡献队伍~ 点击链接提交申请:
http://mongoingmongoing.mikecrm.com/CPDCj1B


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69961190/viewspace-2892858/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2020-02-14

  • 博文量
    49
  • 访问量
    29994