找到 1349 篇文章 关于 MongoDB

更新 MongoDB 中的 _id 字段

AmitDiwan
更新于 2020-03-27 12:09:13

412 次浏览

要更新,只需保存新的 ID 并使用 remove() 删除旧的 ID。让我们首先创建一个包含文档的集合 -> db.updatingDemo.insertOne({"StudentName":"Robert"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e04dae5150ee0e76c06a04b") } > db.updatingDemo.insertOne({"StudentName":"Bob"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e04dae7150ee0e76c06a04c") }以下是使用 find() 方法显示集合中所有文档的查询 -> db.updatingDemo.find();这将产生以下输出 -{ "_id" : ObjectId("5e04dae5150ee0e76c06a04b"), "StudentName" : "Robert" } { "_id" : ObjectId("5e04dae7150ee0e76c06a04c"), "StudentName" : "Bob" }以下是更新 MongoDB 中 _id 的查询 -> myDocument = db.updatingDemo.findOne({"StudentName":"Bob"}); { "_id" : ObjectId("5e04dae7150ee0e76c06a04c"), ... 阅读更多

如何在 MongoDB 集合中添加一列?

AmitDiwan
更新于 2020-03-27 12:05:42

9K+ 次浏览

要添加一列,您需要更新集合。语法如下:db.getCollection(yourCollectionName).update({}, {$set: {"yourColumnName": "yourValue"}}, false, true);为了理解上述语法,让我们创建一个包含文档的集合 -> db.addColumnDemo.insertOne({"StudentId":101, "StudentName":"Chris"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e04d66af5e889d7a519950f") } > db.addColumnDemo.insertOne({"StudentId":102, "StudentName":"Robert"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e04d673f5e889d7a5199510") } > db.addColumnDemo.insertOne({"StudentId":103, "StudentName":"David"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e04d67bf5e889d7a5199511") }以下是使用 find() 方法显示集合中所有文档的查询 -> db.addColumnDemo.find().pretty();这将产生以下输出 -{    "_id" : ObjectId("5e04d66af5e889d7a519950f"),   ... 阅读更多

MongoDB 查询以测试值是否在数组中?

AmitDiwan
更新于 2020-03-27 12:02:38

383 次浏览

要检查特定值,请使用 $in。让我们首先创建一个包含文档的集合 -> db.testInArray.insertOne({"ListOfNumbers":[10, 56, 78, 90, 32]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e04d42df5e889d7a519950d") } > db.testInArray.insertOne({"ListOfNumbers":[56, 78, 91, 100]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e04d588f5e889d7a519950e") }以下是使用 find() 方法显示集合中所有文档的查询 -> db.testInArray.find().pretty();这将产生以下输出 -{    "_id" : ObjectId("5e04d42df5e889d7a519950d"),    "ListOfNumbers" : [       10,       56,       78,       90,       32   ... 阅读更多

如何使用 MongoDB 以不同的格式获取特定数据?

AmitDiwan
更新于 2020-03-27 11:59:38

81 次浏览

为此,只需使用 find()。对于不同的格式,请使用 pretty()。让我们首先创建一个包含文档的集合 -> db.getSpecificData.insertOne( ... { ...    "StudentName": "John", ...    "Information": { ...       "FatherName": "Chris", ...       "Place": { ...          "CountryName": "US", ...          "ZipCode":"111344" ...       }, ...       "id": "1" ...    } ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e039abdf5e889d7a5199509") } > db.getSpecificData.insertOne( ...    { ...       "StudentName": "Carol", ...       "Information": ... 阅读更多

MongoDB - 如何将行复制到新创建的集合中?

AmitDiwan
更新于 2020-03-27 11:54:39

288 次浏览

要将行复制到另一个集合中,请使用 MongoDB。语法如下,其中“yourOldCollectionName”是旧集合,而此集合将被复制到的集合是我们的新集合,即“yourNewCollectionName” -db.yourOldCollectionName.aggregate([{ $sample: { size: 333333 }}, {$out: "yourNewCollectionName"} ], {allowDiskUse: true});让我们首先创建一个包含文档的集合 -> db.sourceCollection.insertOne({"EmployeeName":"Robert", "EmployeeSalary":15000}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e0397c1f5e889d7a5199506") } > db.sourceCollection.insertOne({"EmployeeName":"David", "EmployeeSalary":25000}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e0397c3f5e889d7a5199507") } > db.sourceCollection.insertOne({"EmployeeName":"Mike", "EmployeeSalary":29000}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e0397c4f5e889d7a5199508") }以下是显示集合中所有文档的查询 ... 阅读更多

为什么 MongoDB 查找记录需要花费太多时间?

AmitDiwan
更新于 2020-03-27 11:52:36

192 次浏览

在这种情况下,请使用特定字段上的索引概念。让我们首先创建一个包含文档的集合。在这里,我们还使用 createIndex() 创建了索引 -> db.decreasetimeusingindex.createIndex({"StudentName":1}); {    "createdCollectionAutomatically" : true,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 } > db.decreasetimeusingindex.insertOne({"StudentName":"John Smith", "StudentAge":21}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e03960af5e889d7a51994ff") } > db.decreasetimeusingindex.insertOne({"StudentName":"John Doe", "StudentAge":24}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e039611f5e889d7a5199500") } > db.decreasetimeusingindex.insertOne({"StudentName":"Adam Smith", "StudentAge":22}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e03961df5e889d7a5199501") }以下是显示集合中所有文档的查询 ... 阅读更多

从 MongoDB 中嵌套数组中提取特定元素

AmitDiwan
更新于 2020-03-27 11:49:28

163 次浏览

借助点 (.) 表示法从嵌套数组中提取特定元素。让我们首先创建一个包含文档的集合 -> db.extractParticularElementDemo.insertOne( ...    { ...       "_id" : 101, ...       "StudentName" : "John", ...       "StudentInformation" : [ ...          { ...             "Age" : 21, ...             "StudentPersonalInformation" : [ ...                { ...                   "StudentNickName" : "Mike", ...       ... 阅读更多

在 MongoDB 聚合操作期间用字符串文字替换值

AmitDiwan
更新于 2020-03-27 11:40:04

298 次浏览

使用 MongoDB 的 $literal 设置字符串字面量。 让我们首先创建一个包含文档的集合 ->db.replacevaluedemo.insertOne({"StudentName":"Chris", "StudentFavouriteSubject":{"TeacherName":"Bob", "SubjectCode":"MySQL111"}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e0390a3f5e889d7a51994fd") } >db.replacevaluedemo.insertOne({"StudentName":"Mike", "StudentFavouriteSubject":{"TeacherName":"David", "SubjectCode":"3221Java"}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e0390b8f5e889d7a51994fe") }以下是使用 find() 方法显示集合中所有文档的查询 -> db.replacevaluedemo.find().pretty();这将产生以下输出 -{    "_id" : ObjectId("5e0390a3f5e889d7a51994fd"),    "StudentName" : "Chris",    "StudentFavouriteSubject" : {       "TeacherName" : "Bob",       "SubjectCode" : "MySQL111"    } } {    "_id" : ObjectId("5e0390b8f5e889d7a51994fe"),    "StudentName" ... 阅读更多

如何在 MongoDB 中计算和累加两个日期之间的字段值?

AmitDiwan
更新于 2020年3月27日 11:37:24

浏览量 1K+

使用聚合操作符 $gte 和 $lte 以及 $sum 来计算和累加两个日期之间的字段值。让我们首先创建一个包含文档的集合 -> db.countandsumdemo.insertOne({"Value":10, "created_at":ISODate('2019-10-11')}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e038e6df5e889d7a51994fa") } > db.countandsumdemo.insertOne({"Value":50, "created_at":ISODate('2019-01-31')}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e038e77f5e889d7a51994fb") } > db.countandsumdemo.insertOne({"Value":100, "created_at":ISODate('2019-06-31')}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e038e8af5e889d7a51994fc") }以下是使用 find() 方法显示集合中所有文档的查询 -> db.countandsumdemo.find().pretty();这将产生以下输出 -{    "_id" : ObjectId("5e038e6df5e889d7a51994fa"),    "Value" : 10,    "created_at" : ISODate("2019-10-11T00:00:00Z") ... 阅读更多

在后台构建 MongoDB 索引

AmitDiwan
更新于 2020年3月27日 11:32:25

浏览量 2K+

要创建后台索引,请使用 createIndex() 方法并将“background: true”设置为如下语法 -db.yourCollectionName.createIndex({"yourFieldName1":1,"yourFieldName2":1},{background: true} );让我们实现上述语法来创建索引并设置后台 -> db.indexCreationDemo.createIndex({"StudentName":1,"StudentAge":1},{background: true} ); {    "createdCollectionAutomatically" : true,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 }让我们显示索引 -> db.indexCreationDemo.getIndexes();这将产生以下输出 -[    {       "v" : 2,       "key" : {          "_id" : 1       },       "name" : "_id_",       "ns" : "web.indexCreationDemo"    },    {       "v" : 2,       "key" : {          "StudentName" : 1,          "StudentAge" : 1       },       "name" : "StudentName_1_StudentAge_1",       "ns" : "web.indexCreationDemo",       "background" : true    } ]

广告