找到 1349 篇文章 关于 MongoDB
138 次查看
要获取数组元素的索引,请使用 $indexOfArray。让我们创建一个包含文档的集合 −> db.demo65.insertOne({"ListOfValues":[10, 20, 30]}); { "acknowledged" : true, "insertedId" : ObjectId("5e28990ecfb11e5c34d89938") } > db.demo65.insertOne({"ListOfValues":[50, 60, 70, 100]}); { "acknowledged" : true, "insertedId" : ObjectId("5e28991ecfb11e5c34d89939") } > db.demo65.insertOne({"ListOfValues":[30, 40, 89, 91, 98]}); { "acknowledged" : true, "insertedId" : ObjectId("5e28992bcfb11e5c34d8993a") }使用 find() 方法显示集合中的所有文档 −> db.demo65.find();这将产生以下输出 −{ "_id" : ObjectId("5e28990ecfb11e5c34d89938"), "ListOfValues" : [ 10, 20, 30 ] } { "_id" : ObjectId("5e28991ecfb11e5c34d89939"), "ListOfValues" : [ 50, 60, ... 阅读更多
3K+ 次查看
要计算特定字段的平均值,请使用 aggregate() 和 $avg。让我们创建一个包含文档的集合 −> db.demo214.insertOne({"Marks":56, "Name":"David"}); { "acknowledged" : true, "insertedId" : ObjectId("5e3e319403d395bdc2134705") } > db.demo214.insertOne({"Marks":86, "Name":"Bob"}); { "acknowledged" : true, "insertedId" : ObjectId("5e3e319c03d395bdc2134706") } > db.demo214.insertOne({"Marks":78, "Name":"Carol"}); { "acknowledged" : true, "insertedId" : ObjectId("5e3e31a403d395bdc2134707") }使用 find() 方法显示集合中的所有文档 −> db.demo214.find();这将产生以下输出 −{ "_id" : ObjectId("5e3e319403d395bdc2134705"), "Marks" : 56, "Name" : "David" } { "_id" : ObjectId("5e3e319c03d395bdc2134706"), "Marks" : 86, "Name" : "Bob" } { "_id" ... 阅读更多
798 次查看
要合并,请使用 aggregate() 和 $PUSH。让我们创建一个包含文档的集合 −> db.demo64.insertOne({"Subjects":["MySQL", "MongoDB", "Java"]}); { "acknowledged" : true, "insertedId" : ObjectId("5e28762bcfb11e5c34d89936") } > db.demo64.insertOne({"Subjects":["Oracle", "Spring", "Python"]}); { "acknowledged" : true, "insertedId" : ObjectId("5e28763fcfb11e5c34d89937") }使用 find() 方法显示集合中的所有文档 −> db.demo64.find();这将产生以下输出 −{ "_id" : ObjectId("5e28762bcfb11e5c34d89936"), "Subjects" : [ "MySQL", "MongoDB", "Java" ] } { "_id" : ObjectId("5e28763fcfb11e5c34d89937"), "Subjects" : [ "Oracle", "Spring", "Python" ] }以下是 MongoDB 中合并文档数组的查询 −> db.demo64.aggregate([ ... { "$group": { ... 阅读更多
374 次查看
您需要使用 $group 来对具有指定 _id 表达式的文档进行分组。让我们首先创建一个包含文档的集合 −> db.aggreagateDemo.insertOne({"Product_Id":1, "ProductPrice":50}); { "acknowledged" : true, "insertedId" : ObjectId("5e06d3c025ddae1f53b621d9") } > db.aggreagateDemo.insertOne({"Product_Id":2, "ProductPrice":100}); { "acknowledged" : true, "insertedId" : ObjectId("5e06d3c625ddae1f53b621da") } > db.aggreagateDemo.insertOne({"Product_Id":2, "ProductPrice":500}); { "acknowledged" : true, "insertedId" : ObjectId("5e06d3cb25ddae1f53b621db") } > db.aggreagateDemo.insertOne({"Product_Id":1, "ProductPrice":150}); { "acknowledged" : true, "insertedId" : ObjectId("5e06d3d125ddae1f53b621dc") }以下是使用 find() 方法显示集合中所有文档的查询 −> db.aggreagateDemo.find().pretty();这将产生以下输出 −{ "_id" : ObjectId("5e06d3c025ddae1f53b621d9"), ... 阅读更多
118 次查看
要检查记录是否存在,请在 MongoDB 中使用 findOne()。让我们首先创建一个包含文档的集合 −> db.existsAlternateDemo.insertOne({"StudentName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5e06d23f9e4dae213890ac5c") } > db.existsAlternateDemo.insertOne({"StudentName":"Chris", "StudentAge":21}); { "acknowledged" : true, "insertedId" : ObjectId("5e06d2559e4dae213890ac5d") } >db.existsAlternateDemo.insertOne({"StudentName":"Chris", "StudentAge":22, "StudentCountryName":"US"}); { "acknowledged" : true, "insertedId" : ObjectId("5e06d2689e4dae213890ac5e") }以下是使用 find() 方法显示集合中所有文档的查询 −> db.existsAlternateDemo.find();这将产生以下输出 −{ "_id" : ObjectId("5e06d23f9e4dae213890ac5c"), "StudentName" : "Chris" } { "_id" : ObjectId("5e06d2559e4dae213890ac5d"), "StudentName" : "Chris", "StudentAge" : 21 } { ... 阅读更多
2K+ 次查看
要对特定字段求和,请使用 aggregate 和 $sum。让我们首先创建一个包含文档的集合 −> db.getSumOfFieldsDemo.insertOne({"Customer_Id":101, "Price":50, "Status":"Active"}); { "acknowledged" : true, "insertedId" : ObjectId("5e06cec29e4dae213890ac55") } > db.getSumOfFieldsDemo.insertOne({"Customer_Id":102, "Price":200, "Status":"Inactive"}); { "acknowledged" : true, "insertedId" : ObjectId("5e06ced19e4dae213890ac56") } > db.getSumOfFieldsDemo.insertOne({"Customer_Id":101, "Price":3000, "Status":"Active"}); { "acknowledged" : true, "insertedId" : ObjectId("5e06cedd9e4dae213890ac57") } > db.getSumOfFieldsDemo.insertOne({"Customer_Id":103, "Price":400, "Status":"Active"}); { "acknowledged" : true, "insertedId" : ObjectId("5e06cee79e4dae213890ac58") }以下是使用 find() 方法显示集合中所有文档的查询 −> db.getSumOfFieldsDemo.find().pretty();这将产生以下输出 −{ "_id" : ... 阅读更多
7K+ 次查看
要在 MongoDB 中插入记录并避免重复,请使用“unique:true”。让我们首先创建一个包含文档的集合。在这里,我们试图添加重复的记录 −> db.insertWithoutDuplicateDemo.createIndex({"StudentFirstName":1}, { unique: true } ); { "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 } > db.insertWithoutDuplicateDemo.insert({"StudentFirstName":"Chris"}, { upsert: true }); WriteResult({ "nInserted" : 1 }) > db.insertWithoutDuplicateDemo.insert({"StudentFirstName":"David"}, { upsert: true }); WriteResult({ "nInserted" : 1 }) > db.insertWithoutDuplicateDemo.insert({"StudentFirstName":"Chris"}, { upsert: true }); WriteResult({ "nInserted" : 0, "writeError" : { "code" : 11000, "errmsg" : "E11000 duplicate ... 阅读更多
309 次查看
要应用条件,请使用 $setIsSubset。让我们首先创建一个包含文档的集合 −> db.subsetDemo.insertOne({"StudentName":"Chris", "StudentFavouriteSubject":["Java", "Python"]}); { "acknowledged" : true, "insertedId" : ObjectId("5e063e49150ee0e76c06a052") } > db.subsetDemo.insertOne({"StudentName":"Chris", "StudentFavouriteSubject":["Java", "Python", "MySQL"]}); { "acknowledged" : true, "insertedId" : ObjectId("5e063e4f150ee0e76c06a053") }以下是使用 find() 方法显示集合中所有文档的查询 −> db.subsetDemo.find().pretty();这将产生以下输出 −{ "_id" : ObjectId("5e063e49150ee0e76c06a052"), "StudentName" : "Chris", "StudentFavouriteSubject" : [ "Java", "Python" ] } { "_id" : ObjectId("5e063e4f150ee0e76c06a053"), "StudentName" : "Chris", ... 阅读更多
1K+ 次查看
首先,获取当前月份,并减去1以获取上个月的记录。让我们首先创建一个包含文档的集合:−> db.findOneMonthAgoData.insertOne({"CustomerName":"Chris", "PurchaseDate":new ISODate("2019-12-26")}); { "acknowledged" : true, "insertedId" : ObjectId("5e04e16c150ee0e76c06a04f") } > db.findOneMonthAgoData.insertOne({"CustomerName":"David", "PurchaseDate":new ISODate("2019-11-26")}); { "acknowledged" : true, "insertedId" : ObjectId("5e04e178150ee0e76c06a050") } > db.findOneMonthAgoData.insertOne({"CustomerName":"Bob", "PurchaseDate":new ISODate("2020-11-26")}); { "acknowledged" : true, "insertedId" : ObjectId("5e04e186150ee0e76c06a051") }以下是使用find()方法显示集合中所有文档的查询:−> db.findOneMonthAgoData.find();这将产生以下输出:{ "_id" : ObjectId("5e04e16c150ee0e76c06a04f"), "CustomerName" : "Chris", "PurchaseDate" : ISODate("2019-12-26T00:00:00Z") } { ... 阅读更多