MongoDB 集合中没有的记录怎么插入?
如果 MongoDB 集合中没有该记录,你可以用 update() 函数来插入记录。为了理解这个概念,我们用文档来创建一个集合。创建一个带文档的集合的查询如下所示 -
> db.insertIfNotExistsDemo.insertOne({"StudentName":"Mike","StudentAge":21});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c7eec7b559dd2396bcfbfc2")
}
> db.insertIfNotExistsDemo.insertOne({"StudentName":"Sam","StudentAge":22});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c7eec97559dd2396bcfbfc3")
}使用 find() 方法,显示一个集合中的所有文档。查询如下 -
> db.insertIfNotExistsDemo.find().pretty();
The following is the output:
{
"_id" : ObjectId("5c7eec7b559dd2396bcfbfc2"),
"StudentName" : "Mike",
"StudentAge" : 21
}
{
"_id" : ObjectId("5c7eec97559dd2396bcfbfc3"),
"StudentName" : "Sam",
"StudentAge" : 22
}如果一个记录不存在,这里有一个查询可以插入它 -
> key = {"StudentName":"David"}
{ "StudentName" : "David" }
> value = {"StudentName":"David","StudentAge":26}
{ "StudentName" : "David", "StudentAge" : 26 }
> db.insertIfNotExistsDemo.update(key, value, upsert=true);输出如下 -
WriteResult({
"nMatched" : 0,
"nUpserted" : 1,
"nModified" : 0,
"_id" : ObjectId("5c7eecd4c743760e97af8261")
})让我们从一个集合中查看所有文档。查询如下 -
> db.insertIfNotExistsDemo.find().pretty();
输出如下 -
{
"_id" : ObjectId("5c7eec7b559dd2396bcfbfc2"),
"StudentName" : "Mike",
"StudentAge" : 21
}
{
"_id" : ObjectId("5c7eec97559dd2396bcfbfc3"),
"StudentName" : "Sam",
"StudentAge" : 22
}
{
"_id" : ObjectId("5c7eecd4c743760e97af8261"),
"StudentName" : "David",
"StudentAge" : 26
}看一下示例输出,“StudentName”:“David”和“StudentAge”:26 已经成功插入。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言程序设计
C++
C#
MongoDB
MySQL
Javascript
PHP