找到关于数据库的6705 篇文章

MongoDB 查询如何将用户定义变量设置到查询中?

AmitDiwan
更新于 2020年4月2日 06:35:34

394 次浏览

对于用户定义变量,在 MongoDB 中使用 var 关键字。让我们创建一个包含文档的集合 -> db.demo327.insertOne({"FirstName":"Chris", "LastName":"Brown"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e516952f8647eb59e562076") } > db.demo327.insertOne({"FirstName":"David", "LastName":"Miller"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e51695af8647eb59e562077") } > db.demo327.insertOne({"FirstName":"John", "LastName":"Doe"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e516962f8647eb59e562078") } > db.demo327.insertOne({"FirstName":"John", "LastName":"Smith"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e516968f8647eb59e562079") }使用 find() 方法显示集合中的所有文档 -> db.demo327.find(); 这将产生以下输出 -{ "_id" : ObjectId("5e516952f8647eb59e562076"), "FirstName" : "Chris", "LastName" : "Brown" } { "_id" : ObjectId("5e51695af8647eb59e562077"), ... 阅读更多

访问 MongoDB 集合中的数组值以获取特定文档

AmitDiwan
更新于 2020年4月2日 06:33:03

193 次浏览

要访问数组值,请使用点 (.) 表示法。让我们创建一个包含文档的集合 -> db.demo326.insertOne({id:101, "ProductDetails":[{"ProductId":"Prod-101", "ProductName":"Product-1"}, ... {"ProductId":"Prod-102", "ProductName":"Product-2"} ... ] ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e516751f8647eb59e562074") } > db.demo326.insertOne({id:103, "ProductDetails":[{"ProductId":"Prod-104", "ProductName":"Product-5"}, ... {"ProductId":"Prod-105", "ProductName":"Product-6"} ... ] ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e516771f8647eb59e562075") }使用 find() 方法显示集合中的所有文档 -> db.demo326.find(); 这将产生以下输出 -{    "_id" : ObjectId("5e516751f8647eb59e562074"), "id" : 101, "ProductDetails" : [       { "ProductId" : "Prod-101", "ProductName" : "Product-1" }, ... 阅读更多

MongoDB 如何进行多次插入更新而不会影响性能?

AmitDiwan
更新于 2020年4月2日 06:30:26

146 次浏览

使用 insertMany() 将多个文档插入集合。为此,可以使用 ensureIndex() 来更新性能。让我们创建一个包含文档的集合并插入多个文档 -> db.demo325.insertMany( [ ...    { _id: 101, Name: "Chris", Age: 23 }, ...    { _id: 102, Name: "David", Age: 24 }, ...    { _id: 103, Name: "Bob", Age: 22 } ... ] ); { "acknowledged" : true, "insertedIds" : [ 101, 102, 103 ] }使用 find() 方法显示集合中的所有文档 -> db.demo325.find().pretty(); 这将产生以下输出 -{ "_id" : 101, "Name" : "Chris", "Age" : 23 } { "_id" : 102, "Name" : "David", "Age" : 24 } { "_id" : 103, "Name" : "Bob", "Age" : 22 }使用 ensureIndex() -> db.demo325.ensureIndex({Name:1}); 这将产生以下输出 -{    "createdCollectionAutomatically" : false,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 }

在 MongoDB 中如何使用位置运算符处理层级结构?

AmitDiwan
更新于 2020年4月2日 06:26:48

69 次浏览

让我们创建一个包含文档的集合 -> db.demo324.insertOne({"ListOfValues":[10, 20, 30]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e516349f8647eb59e562073") }使用 find() 方法显示集合中的所有文档 -> db.demo324.find().pretty(); 这将产生以下输出 -{    "_id" : ObjectId("5e516349f8647eb59e562073"),    "ListOfValues" : [       10,       20,       30    ] }以下查询显示了如何使用位置运算符 -> db.demo324.update({"ListOfValues":[10, 20, 30]}, { $set: { "ListOfValues.$[]": "MongoDB" } }, { upsert: true } ); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })显示所有... 阅读更多

在 MongoDB 中使用数组索引或内部项索引来获取值

AmitDiwan
更新于 2020年4月2日 06:24:07

95 次浏览

首先,让我们创建一个包含文档的集合,并使用 ensureIndex() 创建索引 -> db.demo323.insertOne({"details":{"Name":"Chris", "Age":34}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e51157af8647eb59e56206e") } > db.demo323.insertOne({"details":{"Name":"David", "Age":31}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e511581f8647eb59e56206f") } > db.demo323.insertOne({"details":{"Name":"Bob", "Age":28}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e511589f8647eb59e562070") } > db.demo323.ensureIndex({"details.Name":1}); {    "createdCollectionAutomatically" : false,    "numIndexesBefore" : 2,    "numIndexesAfter" : 3,    "ok" : 1 }使用 find() 方法显示集合中的所有文档 -> db.demo323.find(); 这将产生以下输出 -{ "_id" : ObjectId("5e51157af8647eb59e56206e"), "details" : ... 阅读更多

检查 MongoDB 中是否存在文档/嵌入式文档

AmitDiwan
更新于 2020年4月2日 06:22:16

189 次浏览

要检查是否存在文档/嵌入式文档,请在 MongoDB 中使用 $exists。让我们创建一个包含文档的集合 -> db.demo322.insertOne( ...  {'id':1001, ...    'details':[{'Score':10000, Name:"Bob"}, ...       {'Score':98000, Name:"Sam"} ...    ] ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e5113e2f8647eb59e56206c") } > db.demo322.insertOne( ... {'id':10002, ...    'details':[{'Score':9000}, ...       {'Score':91000} ...       ] ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e5113faf8647eb59e56206d") }使用 find() 方法显示集合中的所有文档 -> db.demo322.find(); 这将产生以下输出 -{    "_id" ... 阅读更多

如何在 MongoDB 中存储数组值?

AmitDiwan
更新于 2020年4月2日 06:19:49

1K+ 次浏览

首先,让我们创建一个包含文档的集合,其中我们存储数组值 ->db.demo321.insertOne({"UserDetails":[{"UserId":101, "UserName":"Chris"}, {"UserId":102, "UserName":"Mike"}]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e511248f8647eb59e56206a") } >db.demo321.insertOne({"UserDetails":[{"UserId":103, "UserName":"Bob"}, {"UserId":104, "UserName":"Sam"}]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e511259f8647eb59e56206b") }使用 find() 方法显示集合中的所有文档 -> db.demo321.find(); 这将产生以下输出 -{ "_id" : ObjectId("5e511248f8647eb59e56206a"), "UserDetails" : [ { "UserId" : 101, "UserName" : "Chris" }, { "UserId" : 102, "UserName" : "Mike" } ] } { "_id" : ObjectId("5e511259f8647eb59e56206b"), "UserDetails" : [ { "UserId" : 103, "UserName" : "Bob" }, ... 阅读更多

在 MongoDB 中,update() 和 save() 哪种更新方式更快?

AmitDiwan
更新于 2020年4月2日 06:16:54

158 次浏览

最快的更新方式是 update()。让我们创建一个包含文档的集合,看看 update() 如何工作 -> db.demo320.insertOne({"Name":"Chris"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50ee51f8647eb59e562066") } > db.demo320.insertOne({"Name":"Robert"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50ee55f8647eb59e562067") } > db.demo320.insertOne({"Name":"Mike"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50ee59f8647eb59e562068") } > db.demo320.insertOne({"Name":"Sam"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50ee5bf8647eb59e562069") }使用 find() 方法显示集合中的所有文档 -> db.demo320.find(); 这将产生以下输出 -{ "_id" : ObjectId("5e50ee51f8647eb59e562066"), "Name" : "Chris" } { "_id" : ObjectId("5e50ee55f8647eb59e562067"), "Name" : "Robert" ... 阅读更多

MongoDB 中数组的受限子集合的查询

AmitDiwan
更新于 2020年4月2日 06:15:05

358 次浏览

在MongoDB中,您不能对子集合使用capped选项。但是,可以在整个文档上使用capped。要显示数组中特定数量的值,建议使用$slice操作符。让我们创建一个包含文档的集合:-> db.demo319.insertOne({"Scores":[100, 345, 980, 890]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50ecf6f8647eb59e562064") } > db.demo319.insertOne({"Scores":[903, 10004, 84575, 844]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50ed01f8647eb59e562065") }使用find()方法显示集合中的所有文档:-> db.demo319.find().pretty();这将产生以下输出:-{    "_id" : ObjectId("5e50ecf6f8647eb59e562064"),    "Scores" : [       100,       345,     ... 阅读更多

MongoDB 查询以从文档中提取特定值

AmitDiwan
更新于 2020年4月2日 06:10:59

430 次浏览

要提取特定值,请使用带有 $pull 操作符的 UPDATE 命令。让我们创建一个包含文档的集合:-> db.demo318.insertOne({Subject:["MySQL", "MongoDB", "Java"]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50ea6df8647eb59e562062") } > db.demo318.insertOne({Subject:["Spring", "Hibernate"]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50ea78f8647eb59e562063") }使用 find() 方法显示集合中的所有文档:-> db.demo318.find();这将产生以下输出:{ "_id" : ObjectId("5e50ea6df8647eb59e562062"), "Subject" : [ "MySQL", "MongoDB", "Java" ] } { "_id" : ObjectId("5e50ea78f8647eb59e562063"), "Subject" : [ "Spring", "Hibernate" ] }以下是 $pull 特定值“Hibernate”的查询:-> db.demo318.update({Subject:"Hibernate"}, {$pull:{"Subject":"Hibernate"}}); WriteResult({ "nMatched" : 1, ... 阅读更多

广告