如何像在SQL中一样在MongoDB中正确使用“存在”功能?

要检查记录是否存在,请findOne()在MongoDB中使用。首先让我们创建一个包含文档的集合-

> db.existsAlternateDemo.insertOne({"StudentName":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06d23f9e4dae213890ac5c")
}
> db.existsAlternateDemo.insertOne({"StudentName":"Chris","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06d2559e4dae213890ac5d")
}
>db.existsAlternateDemo.insertOne({"StudentName":"Chris","StudentAge":22,"StudentCountryName":"US"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06d2689e4dae213890ac5e")
}

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

> db.existsAlternateDemo.find();

这将产生以下输出-

{ "_id" : ObjectId("5e06d23f9e4dae213890ac5c"), "StudentName" : "Chris" }
{ "_id" : ObjectId("5e06d2559e4dae213890ac5d"), "StudentName" : "Chris", "StudentAge" : 21 }
{ "_id" : ObjectId("5e06d2689e4dae213890ac5e"), "StudentName" : "Chris", "StudentAge" : 22, "StudentCountryName" : "US" }

这是在MongoDB中像SQL中一样正确使用'exist'函数的查询,即findOne()-

> db.existsAlternateDemo.findOne({"StudentCountryName" : "US"});

这将产生以下输出-

{
   "_id" : ObjectId("5e06d2689e4dae213890ac5e"),
   "StudentName" : "Chris",
   "StudentAge" : 22,
   "StudentCountryName" : "US"
}