查询空字段或缺少字段 MongoDB中不同的查询操作符对待null值是不同的。

该页面提供了使用mongo shell中的db.collection.find()方法查询空值的操作示例。 此页面上的示例使用库存收集。 要填充库存收集,请运行以下命令:

这个页面提供了使用mongo shell中的 db.collection.find()方法查询null值的操作示例。此页上的示例使用 inventory 集合。要填充 inventory集合,请运行以下操作:

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

平等过滤器

{item:null}查询匹配包含值是nullitem字段或不包含item字段的文档。

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

该查询返回集合中的两个文档。

类型检查

{item:{$ type:10}}查询只匹配包含item字段值为null的文档; 即item字段的值为BSON TypeNull(类型编号10):

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

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

存在检查

以下示例查询不包含字段的文档。

{item:{$ exists:false}}查询与不包含item字段的文档匹配:

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

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

另请参考:

$type$exists运算符的参考文档。

译者:杨帅

校对:杨帅

参见

原文 - Query for Null or Missing Fields

Copyright © 上海锦木信息技术有限公司 all right reserved,powered by Gitbook文件修订时间: 2020-12-18 11:34:57

results matching ""

    No results matching ""