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

如何在 MongoDB 中查找数组中所有对象都具有特定值的文档?

AmitDiwan
更新于 2020-03-30 08:01:30

469 次查看

让我们创建一个包含文档的集合 -> db.demo74.insertOne( ... { ... StudentName: "Chris", ... StudentDetails: [{ ...    "Subject": "MongoDB", ...    "isRegular": "Active" ...    }, { ...       "Subject": "MongoDB", ...       "isRegular": "InActive" ...    }, { ...       "Subject": "MongoDB", ...       "isRegular": "InActive" ...    }] ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e29c6b671bf0181ecc4226f") } > db.demo74.insertOne({ ... name: "document2", ... data: [{ ...    "Subject": "MongoDB", ...    "isRegular": "Active" ...    }, { ...       "Subject": "MongoDB", ... 阅读更多

在 MongoDB 中,获取第一个和最后一个文档最有效的方法是什么?

AmitDiwan
更新于 2020-03-30 07:56:36

889 次查看

要在 MongoDB 中获取第一个和最后一个文档,请分别使用 aggregate() 以及 $first 和 $last。让我们创建一个包含文档的集合 -> db.demo73.insertOne({"Name":"Chris"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e29c41b71bf0181ecc4226c") } . > db.demo73.insertOne({"Name":"Bob"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e29c41e71bf0181ecc4226d") } > db.demo73.insertOne({"Name":"David"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e29c42271bf0181ecc4226e") }使用 find() 方法显示集合中的所有文档 -> db.demo73.find();这将产生以下输出 -{ "_id" : ObjectId("5e29c41b71bf0181ecc4226c"), "Name" : "Chris" } { "_id" : ObjectId("5e29c41e71bf0181ecc4226d"), "Name" : "Bob" } { "_id" : ObjectId("5e29c42271bf0181ecc4226e"), "Name" ... 阅读更多

MongoDB 子文档数组中第 n 个元素(可变索引)的查询

AmitDiwan
更新于 2020-03-30 07:53:03

591 次查看

为此,请使用 $let 以及 $expr。这里,$let 用于定义临时变量。$expr 用于聚合表达式。让我们创建一个包含文档的集合 -> db.demo72.insertOne( ... { ...    StudentDetails:[ ...       { ...          Name: "Chris", ...          Age: 21 ...       }, ...       { ...          Name: "David", ...          Age: 23 ...       }, ...       { ...          Name: "Bob", ...       ... 阅读更多

如何在 MongoDB 中计算字符串的总和?

AmitDiwan
更新于 2020-03-30 07:48:15

901 次查看

要在 MongoDB 中计算字符串的总和,请使用 aggregate()。让我们创建一个包含文档的集合 -> db.demo71.insertOne({"Price":"20"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e29af210912fae76b13d76e") } > db.demo71.insertOne({"Price":"50"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e29af240912fae76b13d76f") } > db.demo71.insertOne({"Price":"20"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e29af270912fae76b13d770") } > db.demo71.insertOne({"Price":"10"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e29af2d0912fae76b13d771") }使用 find() 方法显示集合中的所有文档 -> db.demo71.find();这将产生以下输出 -{ "_id" : ObjectId("5e29af210912fae76b13d76e"), "Price" : "20" } { "_id" : ObjectId("5e29af240912fae76b13d76f"), "Price" : "50" } { "_id" ... 阅读更多

MongoDB 是否有查询可以连接深层子列表?

AmitDiwan
更新于 2020-03-30 07:44:49

78 次查看

使用 aggregate() 以及 $unwind 连接深层子列表。让我们创建一个包含文档的集合 -> db.demo70.insertOne( ...    { ... ...       "first" : [ ...          { ...             "details" : { ...                "second" : [ ...                   { ...                      "StudentDetails" : { ...                      "Score" : 10 ...           ... 阅读更多

MongoDB,查找属性 id 等于记录 id 的所有文档?

AmitDiwan
更新于 2020-03-30 07:34:18

227 次查看

为此,请使用 $where 并与 == 进行比较。让我们创建一个包含文档的集合 -> db.demo69.insertOne( ... { ...    "_id" : ObjectId("507c7f79bcf86cd7994f6c0e"), ... "Details" : { ... ...    "id" : ObjectId("507c7f79bcf86cd7994f6c0e") ...    } ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("507c7f79bcf86cd7994f6c0e") } > db.demo69.insertOne( ... { ...    "_id" : ObjectId("507c7f79bcf86cd7994f6c0f"),    "Details" : { ...    "id" :ObjectId("507c7f79bcf86cd7994f6c0a") ...    } ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("507c7f79bcf86cd7994f6c0f") }使用 find() 方法显示集合中的所有文档 -> db.demo69.find();这将产生 ... 阅读更多

MongoDB 聚合查询排序

AmitDiwan
更新于 2020-03-30 07:29:16

199 次查看

要进行排序,请使用 $match 以及 aggregate。让我们创建一个包含文档的集合 -> db.demo67.insertOne({"StudentAge":23}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e289edf602d9a2ff1828ed8") } > db.demo67.insertOne({"StudentAge":21}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e289ee1602d9a2ff1828ed9") } > db.demo67.insertOne({"StudentAge":24}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e289ee3602d9a2ff1828eda") }使用 find() 方法显示集合中的所有文档 -> db.demo67.find();这将产生以下输出 -{ "_id" : ObjectId("5e289edf602d9a2ff1828ed8"), "StudentAge" : 23 } { "_id" : ObjectId("5e289ee1602d9a2ff1828ed9"), "StudentAge" : 21 } { "_id" : ObjectId("5e289ee3602d9a2ff1828eda"), "StudentAge" : 24 }以下是使用 aggregate 进行排序的查询 ... 阅读更多

如何在 MongoDB 的旧版本中获取数组元素的索引?

AmitDiwan
更新于 2020-03-30 07:23:50

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, ... 阅读更多

如何在 MongoDB 中计算特定字段的平均值?

AmitDiwan
更新于 2020-03-30 12:35:52

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" ... 阅读更多

如何在 Mongo DB 中合并文档数组?

AmitDiwan
更新于 2020-03-30 07:19:17

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": { ... 阅读更多

广告