找到 1660 篇文章,关于大数据分析

在 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 中,您不能对子集合使用上限。但是,可以在整个文档上使用上限。要从数组中显示特定数量的值,请使用 $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" ] }以下是在 MongoDB 中使用 $pull 提取特定值“Hibernate”的查询 -> db.demo318.update({Subject:"Hibernate"}, {$pull:{"Subject":"Hibernate"}}); WriteResult({ "nMatched" : 1, ... 阅读更多

如何在 MongoDB 中从嵌入列表中获取大于特定值的值?

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

267 次浏览

要获取大于特定值的值,请使用 $gt 以及 find()。让我们创建一个包含文档的集合 -> db.demo317.insertOne( ...    {'id':101, ...       'details':[{'Score':78, Name:"Chris"}, ...          {'Score':88, Name:"David"} ...       ] ...    } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50e69cf8647eb59e562060") } > db.demo317.insertOne( ...    {'id':102, ...    'details':[{'Score':90, Name:"Chris"}, ...       {'Score':91, Name:"David"} ...       ] ...    } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50e6adf8647eb59e562061") }使用 find() 方法显示集合中的所有文档... 阅读更多

如何在 MongoDB 中限制插入同名的项?

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

153 次浏览

为此,请使用 ensureIndex() 并设置 unique:true。让我们创建一个包含文档的集合。在这里,当我们尝试插入重复项时,会发生重复键错误 -> db.demo316.ensureIndex({"SubjectName":1}, {unique:true}); {    "createdCollectionAutomatically" : true,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 } > db.demo316.insertOne({"SubjectName":"MySQL"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50e378f8647eb59e56205d") } > db.demo316.insertOne({"SubjectName":"MongoDB"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50e37df8647eb59e56205e") } > db.demo316.insertOne({"SubjectName":"MongoDB"}); 2020-02-22T13:47:05.186+0530 E QUERY [js] WriteError: E11000 duplicate key error collection: test.demo316 index: SubjectName_1 dup key: { : "MongoDB" } : WriteError({    "index" : 0, ... 阅读更多

更新 MongoDB 中的嵌套文档

AmitDiwan
更新于 2020年4月2日 05:56:30

277 次浏览

要更新嵌套文档,请使用 $set。让我们创建一个包含文档的集合 -> db.demo315.insertOne({ _id :101, ...  details: [ ...     {Name: 'Chris', subjects: [{id:1001, SubjectName:"MySQL"}]} ...  ] ... } ...) { "acknowledged" : true, "insertedId" : 101 }使用 find() 方法显示集合中的所有文档 -> db.demo315.find().pretty();这将产生以下输出 -{    "_id" : 101,    "details" : [       {          "Name" : "Chris",          "subjects" : [             {             ... 阅读更多

MongoDB 查询以在数组中设置子项?

AmitDiwan
更新于 2020年4月1日 14:46:08

205 次浏览

您可以使用位置运算符 $。让我们首先创建一个包含文档的集合 -> db.demo22.insertOne( ...    { ...       ProductId:101, ... ...       ProductDetails: ...       [ ...          { ...             ProductFirstPrice: '35', ...             ProductSecondPrice: '75' ...          }, ...          { ...             ProductFirstPrice: '', ...             ProductSecondPrice:'' ...          }, ...          { ... 阅读更多

广告