您可以使用 $type 运算符来检查某个字段是否包含空值。让我们首先创建一个包含文档的集合。我们还在一个字段中插入了一个空值 -
> db.nullDemo.insertOne({"FirstName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5cc68a1eac184d684e3fa270") } > db.nullDemo.insertOne({"FirstName":null}); { "acknowledged" : true, "insertedId" : ObjectId("5cc68a25ac184d684e3fa271") } > db.nullDemo.insertOne({"FirstName":"Robert"}); { "acknowledged" : true, "insertedId" : ObjectId("5cc68a2cac184d684e3fa272") }
以下是在find()方法的帮助下显示集合中所有文档的查询-
> db.nullDemo.find().pretty();
这将产生以下输出。其中一个字段为空 -
{ "_id" : ObjectId("5cc68a1eac184d684e3fa270"), "FirstName" : "Chris" } { "_id" : ObjectId("5cc68a25ac184d684e3fa271"), "FirstName" : null } { "_id" : ObjectId("5cc68a2cac184d684e3fa272"), "FirstName" : "Robert" }
这是检查字段是否包含空值的查询。检查字段“名字” -
> db.nullDemo.find( { FirstName: { $type: 10 } } );
这将产生以下输出 -
{ "_id" : ObjectId("5cc68a25ac184d684e3fa271"), "FirstName" : null }