检查 MongoDB 中的字段是否存在?
你可以为此使用 $exists 和 $ne 运算符。为了进一步理解这一概念,我们创建一个集合和文档。创建集合和文档的查询如下 −
> db.checkFieldExistDemo.insertOne({"EmployeeId":1,"EmployeeName":"John","isMarried":true,"EmployeeSalary":4648585});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c76f7b31e9c5dd6f1f78281")
}
> db.checkFieldExistDemo.insertOne({"StudentId":2,"StudentName":"John","isMarried":false," StudentAge":19});
{
"acknowledged" : true,0
"insertedId" : ObjectId("5c76f7e11e9c5dd6f1f78282")
}借助 find() 方法,显示来自集合的所有文档。查询如下 −
> db.checkFieldExistDemo.find().pretty();
输出
{
"_id" : ObjectId("5c76f7b31e9c5dd6f1f78281"),
"EmployeeId" : 1,
"EmployeeName" : "John",
"isMarried" : true,
"EmployeeSalary" : 4648585
}
{
"_id" : ObjectId("5c76f7e11e9c5dd6f1f78282"),
"StudentId" : 2,
"StudentName" : "John",
"isMarried" : false,
"StudentAge" : 19
}以下是检查 MongoDB 中字段是否存在的方法。
情况 1 − 当一个字段存在于多个文档中时。查询如下 −
> db.checkFieldExistDemo.find({"isMarried":{$exists:true,$ne:null}}).pretty();输出
{
"_id" : ObjectId("5c76f7b31e9c5dd6f1f78281"),
"EmployeeId" : 1,
"EmployeeName" : "John",
"isMarried" : true,
"EmployeeSalary" : 4648585
}
{
"_id" : ObjectId("5c76f7e11e9c5dd6f1f78282"),
"StudentId" : 2,
"StudentName" : "John",
"isMarried" : false,
"StudentAge" : 19
}情况 2 − 当一个字段只存在于一个文档中时。查询如下 −
> db.checkFieldExistDemo.find({"StudentName":{$exists:true,$ne:null}}).pretty();输出
{
"_id" : ObjectId("5c76f7e11e9c5dd6f1f78282"),
"StudentId" : 2,
"StudentName" : "John",
"isMarried" : false,
"StudentAge" : 19
}
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
JavaScript
PHP