MongoDB查询代表不等于null还是空?

要将查询设置为不等于null或空,请使用$nin运算符。语法如下

db.yourCollectionName.find({yourFieldName:{$nin:[null,""]}});

让我们创建包含文档的集合

> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"Larry","UserAge":24});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5c9d20b6a629b87623db1b26")

}

> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"","UserAge":29});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5c9d20bea629b87623db1b27")

}

> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"Sam","UserAge":32});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5c9d20c7a629b87623db1b28")

}

> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":null,"UserAge":27});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5c9d20d2a629b87623db1b29")

}

> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"Robert","UserAge":26});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5c9d20dda629b87623db1b2a")

}

> db.notEqualToNullOrEmptyDemo.insertOne({"UserName":"","UserAge":23});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5c9d20e7a629b87623db1b2b")

}

以下是在find()方法的帮助下显示集合中所有文档的查询

> db.notEqualToNullOrEmptyDemo.find().pretty();

这将产生以下输出

{

   "_id" : ObjectId("5c9d20b6a629b87623db1b26"),

   "UserName" : "Larry",

   "UserAge" : 24

}

{

   "_id" : ObjectId("5c9d20bea629b87623db1b27"),

   "UserName" : "",

   "UserAge" : 29

}

{

   "_id" : ObjectId("5c9d20c7a629b87623db1b28"),

   "UserName" : "Sam",

   "UserAge" : 32

}

{

   "_id" : ObjectId("5c9d20d2a629b87623db1b29"),

   "UserName" : null,

   "UserAge" : 27

}

{

   "_id" : ObjectId("5c9d20dda629b87623db1b2a"),

   "UserName" : "Robert",

   "UserAge" : 26

}

{

   "_id" : ObjectId("5c9d20e7a629b87623db1b2b"),

   "UserName" : "",

   "UserAge" : 23

}

以下是将条件设置为不等于null或为空的查询

> db.notEqualToNullOrEmptyDemo.find({UserName:{$nin:[null,""]}}).pretty();

这将产生以下输出

{

   "_id" : ObjectId("5c9d20b6a629b87623db1b26"),

   "UserName" : "Larry",

   "UserAge" : 24

}

{

   "_id" : ObjectId("5c9d20c7a629b87623db1b28"),

   "UserName" : "Sam",

   "UserAge" : 32

}

{

   "_id" : ObjectId("5c9d20dda629b87623db1b2a"),

   "UserName" : "Robert",

   "UserAge" : 26

}

以上是 MongoDB查询代表不等于null还是空? 的全部内容, 来源链接: utcz.com/z/322066.html

回到顶部