查询空字段或缺少字段 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}查询匹配包含值是null的item字段或不包含item字段的文档。
db.inventory.find( { item: null } )
该查询返回集合中的两个文档。
类型检查
{item:{$ type:10}}查询只匹配包含item字段值为null的文档; 即item字段的值为BSON Type
为Null(类型编号10):
db.inventory.find( { item : { $type: 10 } } )
该查询仅返回item字段值为null的文档。
存在检查
以下示例查询不包含字段的文档。
{item:{$ exists:false}}查询与不包含item字段的文档匹配:
db.inventory.find( { item : { $exists: false } } )
该查询仅返回不包含项目字段的文档。
另请参考:
译者:杨帅
校对:杨帅
参见