找到 1349 篇文章 关于 MongoDB

如何在 MongoDB 中聚合两个列表,如果至少有一个元素匹配?

AmitDiwan
更新于 2020年5月11日 09:17:18

227 次浏览

为此,在 MongoDB 中使用 $group。在其中,使用 $unwind、$group、$addToSet 等。让我们创建一个包含文档的集合 −> db.demo456.insertOne( ... { _id: 101, StudentName: ["Chris", "David"] } ... ); { "acknowledged" : true, "insertedId" : 101 } > > db.demo456.insertOne( ... { _id: 102, StudentName: ["Mike", "Sam"] } ... ); { "acknowledged" : true, "insertedId" : 102 } > db.demo456.insertOne( ... { _id: 103, StudentName: ["John", "Jace"] } ... ); { "acknowledged" : true, "insertedId" : 103 } > db.demo456.insertOne( ... { _id: 104, StudentName: ["Robert", "John"] } ... ); { "acknowledged" : true, "insertedId" : 104 ... 阅读更多

如何根据特定属性在 MongoDB 中显示对象列表?

AmitDiwan
更新于 2020年5月11日 09:16:38

277 次浏览

要根据特定属性显示对象列表,请在 find() 中使用点表示法。让我们创建一个包含文档的集合 −> db.demo455.insertOne({"Information":{"Student":[{"Name":"Chris", "Age":22}]}});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7e1876dbcb9adb296c95c5") } > db.demo455.insertOne({"Information":{"Student":[{"Name":"David", "Age":21}]}});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7e1883dbcb9adb296c95c6") } > db.demo455.insertOne({"Information":{"Student":[{"Name":"Bob", "Age":24}]}});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7e188adbcb9adb296c95c7") } > db.demo455.insertOne({"Information":{"Student":[{"Name":"Robert", "Age":21}]}});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7e18bcdbcb9adb296c95c8") }使用 find() 方法显示集合中的所有文档 −> db.demo455.find();这将产生以下输出 −{ "_id" : ObjectId("5e7e1876dbcb9adb296c95c5"), "Information" : { "Student" : [ { ... 阅读更多

如何使用 MongoDB 连续发布最新的 N 条排序记录?

AmitDiwan
更新于 2020年5月11日 09:14:18

68 次浏览

要发布最新的 N 条排序记录,请使用 sort() 和 limit()。在这里,使用 limit() 设置要显示的记录数。让我们创建一个包含文档的集合 −> db.demo454.insertOne({"ClientName":"Chris"});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7cce8cdbcb9adb296c95c0") } > db.demo454.insertOne({"ClientName":"John"});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7cce95dbcb9adb296c95c1") } > db.demo454.insertOne({"ClientName":"Bob"});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7cce9fdbcb9adb296c95c2") } > db.demo454.insertOne({"ClientName":"David"});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7ccea6dbcb9adb296c95c3") } > db.demo454.insertOne({"ClientName":"Mike"});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7cceafdbcb9adb296c95c4") }使用 find() 方法显示集合中的所有文档 −> db.demo454.find();这 ... 阅读更多

如何在 MongoDB 中根据数组过滤文档?

AmitDiwan
更新于 2020年5月11日 09:13:33

970 次浏览

要根据数组过滤文档,请使用 $elemMatch。$elemMatch 运算符匹配包含数组字段的文档。让我们创建一个包含文档的集合 −> db.demo453.insertOne( ... { _id: 101, details: [ { Name: "David", Marks: 60 }, { Name: "Mike", Marks: 55} ] } ... ) { "acknowledged" : true, "insertedId" : 101 } > db.demo453.insertOne( ... { _id: 102, details: [ { Name: "Bob", Marks: 80 }, { Name: "Sam", Marks: 78} ] } ... ) { "acknowledged" : true, "insertedId" : 102 } > db.demo453.insertOne( ... { _id: 103, details: [ { Name: "Carol", Marks: 67 ... 阅读更多

获取聚合结果并在不同的 MongoDB 文档中查找重复值的计数

AmitDiwan
更新于 2020年5月11日 09:11:28

130 次浏览

要获取不同文档中重复值的计数,请使用 aggregate()。让我们创建一个包含文档的集合 −> db.demo452.insertOne({"StudentName":"John", "StudentAge":21});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7b7e3371f552a0ebb0a6f3") } > db.demo452.insertOne({"StudentName":"John", "StudentAge":22});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7b7e3671f552a0ebb0a6f4") } > db.demo452.insertOne({"StudentName":"John", "StudentAge":23});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7b7e3971f552a0ebb0a6f5") } > db.demo452.insertOne({"StudentName":"David", "StudentAge":24});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7b7e4371f552a0ebb0a6f6") } > db.demo452.insertOne({"StudentName":"David", "StudentAge":25});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7b7e4571f552a0ebb0a6f7") }使用 find() 方法显示集合中的所有文档 −> db.demo452.find();这将产生以下输出 −{ "_id" : ... 阅读更多

MongoDB 聚合以获取集合中记录的文档的每日平均计数?

AmitDiwan
更新于 2020年5月11日 10:07:14

770 次浏览

要获取记录文档的每日平均计数,请使用 aggregate()。在其中,使用 $project 和 $group。让我们创建一个包含文档的集合 −示例> db.demo451.insertOne({ ... DueDate:new ISODate("2020-03-15T10:50:35.000Z"), ... Value: 10 ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e7b5c5d71f552a0ebb0a6e9") } > db.demo451.insertOne({ ... DueDate:new ISODate("2020-03-14T10:50:35.000Z"), ... Value: 10 ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e7b5c5d71f552a0ebb0a6ea") } > db.demo451.insertOne({ ... DueDate:new ISODate("2020-03-13T10:50:35.000Z"), ... Value: 10 ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e7b5c5d71f552a0ebb0a6eb") }使用 find() 方法显示集合中的所有文档 ... 阅读更多

如何在 MongoDB 中访问子数据并显示特定文档?

AmitDiwan
更新于 2020年5月11日 09:02:59

130 次浏览

为了访问子数据,您需要在 MongoDB 中使用键。让我们创建一个包含文档的集合 −>db.demo450.insertOne({"Information":{"StudentDetails":{"StudentName":"Chris", "StudentAge":21}}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e7b590e71f552a0ebb0a6e6") } >db.demo450.insertOne({"Information":{"StudentDetails":{"StudentName":"David", "StudentAge":23}}});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7b591a71f552a0ebb0a6e7") } >db.demo450.insertOne({"Information":{"StudentDetails":{"StudentName":"Mike", "StudentAge":22}}});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7b592271f552a0ebb0a6e8") }使用 find() 方法显示集合中的所有文档 −> db.demo450.find();这将产生以下输出 −{ "_id" : ObjectId("5e7b590e71f552a0ebb0a6e6"), "Information" : { "StudentDetails" : { "StudentName" : "Chris", "StudentAge" : 21 } } } { "_id" : ObjectId("5e7b591a71f552a0ebb0a6e7"), "Information" : { "StudentDetails" : { ... 阅读更多

如何在 MongoDB 中将项目插入到对象内的数组中?

AmitDiwan
更新于 2020年5月11日 09:02:05

794 次浏览

要将项目插入到对象内已创建的数组中,请使用 MongoDB $push。让我们创建一个包含文档的集合 −> db.demo449.insertOne( ... { ...    details1: { ...       details2: [{ ...          _id:new ObjectId(), ...             Name:"Chris" ...       }], ...       details3: [{ ...          _id:new ObjectId(), ...          Name:"David" ...       }] ...    } ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e7a40e971f552a0ebb0a6e3") }显示所有文档 ... 阅读更多

MongoDB 中 deleteOne() 和 findOneAndDelete() 操作的区别是什么?

AmitDiwan
更新于 2020年5月11日 08:59:12

2K+ 次浏览

findOneAndDelete() 方法根据筛选条件和排序条件从集合中删除单个文档,并返回已删除的文档。deleteOne() 方法从集合中删除单个文档。让我们来看一个例子,并创建一个包含文档的集合:−> db.demo448.insertOne({"Name":"Chris", "Age":21});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7a291cbbc41e36cc3caeca") } > db.demo448.insertOne({"Name":"David", "Age":23});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7a2926bbc41e36cc3caecb") } > db.demo448.insertOne({"Name":"Bob", "Age":22});{    "acknowledged" : true,    "insertedId" : ObjectId("5e7a2930bbc41e36cc3caecc") }使用 find() 方法显示集合中的所有文档:−> db.demo448.find();这将产生以下输出:{ "_id" : ObjectId("5e7a291cbbc41e36cc3caeca"), ... 阅读更多

如何在 MongoDB 中聚合两个集合,其中一个集合的字段大于另一个集合的字段?

AmitDiwan
更新于 2020年4月6日 13:40:32

451 次浏览

为此,您可以使用 $lookup。让我们创建一个包含文档的集合:−> db.demo446.insert([ ...    { "ProductName": "Product1", "ProductPrice": 60 }, ...    { "ProductName": "Product2", "ProductPrice": 90 } ... ]) BulkWriteResult({    "writeErrors" : [ ],    "writeConcernErrors" : [ ],    "nInserted" : 2,    "nUpserted" : 0,    "nMatched" : 0,    "nModified" : 0,    "nRemoved" : 0,    "upserted" : [ ] })使用 find() 方法显示集合中的所有文档:−> db.demo446.find();这将产生以下输出:{ "_id" : ObjectId("5e790766bbc41e36cc3caec3"), "ProductName" : "Product1", "ProductPrice" : 60 } { ... 阅读更多

广告