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

如何在 MongoDB 中持续追加子文档?

AmitDiwan
更新于 2020年5月15日 06:45:17

119 次查看

要追加子文档,请在 MongoDB 中使用 $push。update() 用于更新。让我们创建一个包含文档的集合 -> db.demo587.insertOne({"id":101, "details":[{Name:"Chris", Age:21, Marks:57}]});{    "acknowledged" : true, "insertedId" : ObjectId("5e92ba01fd2d90c177b5bcc9") } > db.demo587.insertOne({"id":102, "details":[{Name:"Bob", Age:22, Marks:78}]});{    "acknowledged" : true, "insertedId" : ObjectId("5e92ba0efd2d90c177b5bcca") }使用 find() 方法显示集合中的所有文档 -> db.demo587.find();这将产生以下输出 -{ "_id" : ObjectId("5e92ba01fd2d90c177b5bcc9"), "id" : 101, "details" : [ { "Name" : "Chris", "Age" : 21, "Marks" : 57 } ] } { "_id" : ObjectId("5e92ba0efd2d90c177b5bcca"), "id" : 102, "details" : [ { "Name" : ... 阅读更多

MongoDB 查询以选择 distinct 和计数?

AmitDiwan
更新于 2020年5月15日 06:43:20

992 次查看

让我们创建一个包含文档的集合 -> db.demo586.insertOne( ...    {"details": [ ...       { ...          "Name":"Chris", ...          "Marks":71 ...       }, ...       { ...          "Name":"Chris", ...          "Marks":61 ...       }, ...       { ...          "Name":"David", ...          "Marks":81 ...       } ...   ...    ] ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e9200fefd2d90c177b5bcc7") } > db.demo586.insertOne( ... 阅读更多

MongoDB:使用引用作为键并手动添加值?

AmitDiwan
更新于 2020年5月15日 06:39:17

225 次查看

要手动添加值,请在 MongoDB 中使用 $push。让我们创建一个包含文档的集合 -> db.demo585.insert({ ...    firstName: 'John', ...    lastName: 'Doe', ...    SubjectName:"MongoDB", ...    Marks: [59] ... }); WriteResult({ "nInserted" : 1 }) > db.demo585.insert({ ...    firstName: 'Chris', ...    lastName: 'Brown', ...    SubjectName:"MySQL", ...    Marks: [79] ... }); WriteResult({ "nInserted" : 1 })使用 find() 方法显示集合中的所有文档 -> db.demo585.find();这将产生以下输出 -{ "_id" : ObjectId("5e91fd80fd2d90c177b5bcc3"), "firstName" : "John", "lastName" : "Doe", "SubjectName" : "MongoDB", "Marks" : [ 59 ] } { ... 阅读更多

如何在 MongoDB 中将分组投影到对象中并仅显示 marks 字段?

AmitDiwan
更新于 2020年5月15日 06:36:46

80 次查看

让我们首先创建一个文档 -> var document= [ ...    { "SubjectName" : "MySQL", "Marks" : 78 }, ...    { "SubjectName" : "MongoDB", "Marks" : 89 }, ...    { "SubjectName" : "Java", "Marks" : 71 }, ... ];以下是显示文档的查询 -> printjson(document);这将产生以下输出 -[    {       "SubjectName" : "MySQL",       "Marks" : 78    },    {       "SubjectName" : "MongoDB",       "Marks" : 89    },    {       "SubjectName" : "Java",       "Marks" : 71    } ]以下是将分组投影到 MongoDB 中的对象的查询 -> var makeObject= {}; > document.forEach(function (d){ ...    makeObject[d.SubjectName] = d.Marks; ... }); > printjson(makeObject);这将产生以下输出 -{ "MySQL" : 78, "MongoDB" : 89, "Java" : 71 }

MongoDB 查询以获取数组元素聚合中的平均值?

AmitDiwan
更新于 2020年5月15日 06:29:52

888 次查看

要获取数组元素的平均值,请使用 $avg。让我们创建一个包含文档的集合 -> db.demo584.insertOne({"Marks":[75,50,85,60,80]});{    "acknowledged" : true,    "insertedId" : ObjectId("5e91d827fd2d90c177b5bcc2") }使用 find() 方法显示集合中的所有文档 -> db.demo584.find().pretty();这将产生以下输出 -{    "_id" : ObjectId("5e91d827fd2d90c177b5bcc2"),    "Marks" : [       75,       50,       85,       60,       80    ] }以下是查找数组元素聚合中平均值的查询 -> db.demo584.aggregate([ ...    { $project: { MarksAvg: { $avg: "$Marks"} } } ... ])这将产生以下输出 -{ "_id" : ObjectId("5e91d827fd2d90c177b5bcc2"), "MarksAvg" : 70 }

通过 MongoDB 中的子文档过滤子文档?

AmitDiwan
更新于 2020年5月15日 06:28:34

547 次查看

为此,请使用 aggregate() 以及 $unwind。让我们创建一个包含文档的集合 -> db.demo583.insert([ ...    { ...       "details1" : [ ...          { ...             "details2" : [ ...                { ...                   "isMarried" : true, ...                   "Name" : "Chris" ...                }, ...                { ...         ... 阅读更多

在系统变量 $$ROOT 上应用 Group Accumulator 运算符 $first 以返回对根文档的引用?

AmitDiwan
更新于 2020年5月15日 06:23:46

115 次查看

累加器是运算符,它们在文档通过管道时维护其状态。$ROOT 引用根文档,即当前在聚合管道阶段中处理的顶级文档。让我们创建一个包含文档的集合 -> db.demo582.insertOne({FirstName:"Chris", Age:21, createDate:new ISODate("2020-01-10")});{    "acknowledged" : true, "insertedId" : ObjectId("5e91ce41fd2d90c177b5bcbd") } > db.demo582.insertOne({FirstName:"Chris", Age:21, createDate:new ISODate("2020-04-21")});{    "acknowledged" : true, "insertedId" : ObjectId("5e91ce4ffd2d90c177b5bcbe") } > db.demo582.insertOne({FirstName:"Chris", Age:22, createDate:new ISODate("2020-02-11")});{    "acknowledged" : true, "insertedId" : ObjectId("5e91ce59fd2d90c177b5bcbf") } > db.demo582.insertOne({FirstName:"Chris", Age:22, createDate:new ISODate("2020-01-12")});{    "acknowledged" : true, "insertedId" : ObjectId("5e91ce6efd2d90c177b5bcc0") }使用 find() 方法显示集合中的所有文档 ... 阅读更多

如何在 MongoDB 中对列表进行排序并在其项目中添加位置?

AmitDiwan
更新于 2020年5月15日 06:19:28

253 次查看

要对列表进行排序,请使用 sort()。让我们创建一个包含文档的集合 -> db.demo581.insertOne({"Name":"Chris", "Score":56});{    "acknowledged" : true, "insertedId" : ObjectId("5e91cbbbfd2d90c177b5bcb6") } > db.demo581.insertOne({"Name":"Bob", "Score":240});{    "acknowledged" : true, "insertedId" : ObjectId("5e91cbbbfd2d90c177b5bcb7") } > db.demo581.insertOne({"Name":"David", "Score":150});{    "acknowledged" : true, "insertedId" : ObjectId("5e91cbbcfd2d90c177b5bcb8") }使用 find() 方法显示集合中的所有文档 -> db.demo581.find();这将产生以下输出 -{ "_id" : ObjectId("5e91cbbbfd2d90c177b5bcb6"), "Name" : "Chris", "Score" : 56 } { "_id" : ObjectId("5e91cbbbfd2d90c177b5bcb7"), "Name" : "Bob", "Score" : 240 } { "_id" : ObjectId("5e91cbbcfd2d90c177b5bcb8"), "Name" : "David", "Score" : 150 }以下是查询 ... 阅读更多

在 MongoDB 中对不同集合元素中的唯一属性求和并获取结果价格?

AmitDiwan
更新于 2020年5月15日 06:17:28

364 次查看

要计算不同集合元素中唯一属性的总和,请使用 $cond 以及 $group。这将给出最终价格。让我们创建一个包含文档的集合 -> db.demo580.insertOne( ...    { ...       "Name":"John", ...       "Id1":"110", ...       "Id2":"111", ...       "Price":10.5 ...    } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e918cebfd2d90c177b5bcae") } > > db.demo580.insertOne( ... { ...    "Name":"John", ...    "Id1":"111", ...    "Id2":"", ...    "Price":9.5 ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e918cecfd2d90c177b5bcaf") }显示所有文档 ... 阅读更多

MongoDB 查询仅切片数组的一个元素

AmitDiwan
更新于 2020年5月15日 06:12:27

298 次浏览

要仅切片数组的一个元素,请在 MongoDB 中使用 $slice。让我们创建一个包含文档的集合 -> db.demo579.insertOne( ...    { ...       "_id" : 101, ...       "details" : { "FirstName" : "John" }, ...       "Marks" : [ 56,78,90,34,45,74 ] ...    } ... ); { "acknowledged" : true, "insertedId" : 101 }使用 find() 方法显示集合中的所有文档 -> db.demo579.find().pretty();这将产生以下输出 -{    "_id" : 101,    "details" : {       "FirstName" : "John"    },    "Marks" : [       56,       78,       90,       34,       45,       74    ] }以下是仅切片数组的一个元素的查询 -> db.demo579.find({},{Marks : {$slice : 1} ,"details":0,"_id":0})这将产生以下输出 -{ "Marks" : [ 56 ] }

广告