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

MongoDB 查询多个文档字段的精确匹配

AmitDiwan
更新于 2020-04-03 13:49:41

671 次浏览

对于精确匹配,将要匹配的值设置在 MongoDB 的 $in() 中。让我们首先创建一个包含文档的集合 -> db.demo422.insertOne({"Name":"Chris", "Marks":34}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e73a4059822da45b30346e1") } > db.demo422.insertOne({"Name":"Chris", "Marks":56}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e73a40a9822da45b30346e2") } > db.demo422.insertOne({"Name":"David", "Marks":78}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e73a4149822da45b30346e3") } > db.demo422.insertOne({"Name":"Sam", "Marks":45}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e73a41e9822da45b30346e4") } > db.demo422.insertOne({"Name":"David", "Marks":89}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e73a4239822da45b30346e5") }使用 find() 方法显示集合中的所有文档 -> db.demo422.find();这将生成... 阅读更多

如何在 MongoDB 中插入日期?

AmitDiwan
更新于 2020-04-03 13:47:42

1K+ 次浏览

要在 MongoDB 中插入日期,请使用 Date()。让我们创建一个包含文档的集合 -> db.demo421.insert({"DueDate":new Date(Date.now())}); WriteResult({ "nInserted" : 1 }) > db.demo421.insert({"DueDate":new Date("2020-01-15")}); WriteResult({ "nInserted" : 1 }) > db.demo421.insert({"DueDate":new Date("2018-12-31")}); WriteResult({ "nInserted" : 1 })使用 find() 方法显示集合中的所有文档 -> db.demo421.find();这将生成以下输出 -{ "_id" : ObjectId("5e73a2ec9822da45b30346de"), "DueDate" : ISODate("2020-03-19T16:50:52.746Z") } { "_id" : ObjectId("5e73a2fb9822da45b30346df"), "DueDate" : ISODate("2020-01-15T00:00:00Z") } { "_id" : ObjectId("5e73a3079822da45b30346e0"), "DueDate" : ISODate("2018-12-31T00:00:00Z") }阅读更多

如何合并 MongoDB 中数组中的唯一项?

AmitDiwan
更新于 2020-04-03 13:46:05

445 次浏览

要合并数组中的唯一项,请在 MongoDB 中使用 aggregate()。让我们创建一个包含文档的集合 -> db.demo420.insert( ...    { ... ...       "details" : [ ...          { ...             "Value1":10, ...             "Value2":20, ...             "Value3":30 ...          } ...       ] ...    } ... ) WriteResult({ "nInserted" : 1 }) > db.demo420.insert( ...    { ... ...       "Info" : [ ...          { ... 阅读更多

更新 MongoDB 中数组中具有特定键的对象

AmitDiwan
更新于 2020-04-03 13:42:15

715 次浏览

让我们首先创建一个包含文档的集合 ->db.demo419.insertOne({"ProductInformation":[{"ProductName":"Product-1", "ProductPrice":500}, {"ProductName":"Product-2", "ProductPrice":600}]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e724762b912067e57771ae8") }使用 find() 方法显示集合中的所有文档 -> db.demo419.find();这将生成以下输出 -{ "_id" : ObjectId("5e724762b912067e57771ae8"), "ProductInformation" : [ { "ProductName" : "Product-1", "ProductPrice" : 500 }, { "ProductName" : "Product-2", "ProductPrice" : 600 } ] }以下是如何更新数组中具有特定键的对象的查询 -> db.demo419.update({'ProductInformation.ProductName' : "Product-1" }, { $set : { 'ProductInformation.$.ProductPrice' : 1250}}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }显示 ... 阅读更多

MongoDB 查询过滤所有嵌套数组元素都满足条件的对象

AmitDiwan
更新于 2020-04-03 13:40:35

667 次浏览

为此,请使用 aggregate()。让我们首先创建一个包含文档的集合 -> db.demo418.insertOne( ...    { ...       "details":[ ...          { ...             "CountryName":"US", ...             "Marks":45 ...          }, ...          { ...             "CountryName":"US", ...             "Marks":56 ...          }, ... ...       ], ...       "Name":"John" ...    } ... ); {    "acknowledged" : true,   ... 阅读更多

更新 MongoDB 中每个员工薪资字段的值,增加 10%

AmitDiwan
更新于 2020-04-03 13:38:00

896 次浏览

让我们首先创建一个包含文档的集合 -> db.demo417.insertOne({"EmployeeName":"Chris", "EmployeeSalary":500}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e723ebbb912067e57771ae4") } > db.demo417.insertOne({"EmployeeName":"Mike", "EmployeeSalary":1000}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e723ed7b912067e57771ae5") }使用 find() 方法显示集合中的所有文档 -> db.demo417.find();这将生成以下输出 -{ "_id" : ObjectId("5e723ebbb912067e57771ae4"), "EmployeeName" : "Chris", "EmployeeSalary" : 500 } { "_id" : ObjectId("5e723ed7b912067e57771ae5"), "EmployeeName" : "Mike", "EmployeeSalary" : 1000 }以下是如何更新员工集合中每个员工薪资字段值,增加 10% 的查询 -> db.demo417.update({ "EmployeeName": { $in: ["Chris", "Mike"] } }, ... 阅读更多

将集合转换为 MongoDB 中的固定大小集合

AmitDiwan
更新于 2020-04-03 13:35:55

178 次浏览

要将集合转换为固定大小集合,请使用 runCommand()。它提供了一个助手来运行指定的数据库命令。让我们首先创建一个包含文档的集合 -> db.demo416.insertOne({"StudentName":"David"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e723a7bb912067e57771adf") } > db.demo416.insertOne({"StudentName":"Mike"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e723a81b912067e57771ae0") } > db.demo416.insertOne({"StudentName":"Sam"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e723a84b912067e57771ae1") }使用 find() 方法显示集合中的所有文档 -> db.demo416.find();这将生成以下输出 -{ "_id" : ObjectId("5e723a7bb912067e57771adf"), "StudentName" : "David" } { "_id" : ObjectId("5e723a81b912067e57771ae0"), "StudentName" : "Mike" } { "_id" : ObjectId("5e723a84b912067e57771ae1"), "StudentName" : ... 阅读更多

如何在 MongoDB 查询中选择特定列?

AmitDiwan
更新于 2020-04-03 13:28:16

7K+ 次浏览

要选择特定列,您可以忽略其余列,即要隐藏这些列,请将其设置为 0。让我们首先创建一个包含文档的集合 -> db.demo415.insertOne({"ClientName":"Robert", "ClientCountryName":"US"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e72329db912067e57771adc") } > db.demo415.insertOne({"ClientName":"David", "ClientCountryName":"UK"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e7232acb912067e57771add") } > db.demo415.insertOne({"ClientName":"Bob", "ClientCountryName":"AUS"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e7232b4b912067e57771ade") }使用 find() 方法显示集合中的所有文档 -> db.demo415.find();这将生成以下输出 -{ "_id" : ObjectId("5e72329db912067e57771adc"), "ClientName" : "Robert", "ClientCountryName" : "US" } { "_id" : ObjectId("5e7232acb912067e57771add"), ... 阅读更多

在 MongoDB 数据库中根据 _id 在对象数组中查找?

AmitDiwan
更新于 2020-04-03 13:26:08

746 次浏览

要在对象数组上根据_id查找,请使用聚合操作并避免使用find()。 让我们首先创建一个包含文档的集合 -> db.demo414.insertOne( ...    { ...       "_id": "110", ...       "details":[ ...          { ...             "StudentName":"John", ...             "StudentMarks":56 ...          }, ...          { ...             "StudentName":"Robert", ...             "StudentMarks":98 ...          } ...       ] ...    } ... ); { "acknowledged" : true, "insertedId" : "110" }使用find()方法显示集合中的所有文档 -> db.demo414.find();这将产生以下输出 -{ "_id" : "110", "details" : [ { "StudentName" : "John", "StudentMarks" : 56 }, { "StudentName" : "Robert", "StudentMarks" : 98 } ] }以下是根据对象数组中的_id查找的查询 -> db.demo414.aggregate([{$unwind: "$details"}, {$match:{"details.StudentMarks" :56}}] )这将产生以下输出 -{ "_id" : "110", "details" : { "StudentName" : "John", "StudentMarks" : 56 } }

是否可以在MongoDB中使用通配符排除嵌套字段?

AmitDiwan
更新于 2020年4月3日 13:24:14

810 次浏览

使用聚合管道实现。 让我们首先创建一个包含文档的集合 -> db.demo413.insertOne( ...    { ...       "_id": "101", ...       "details": { ...          "Info1": { ...             Name:"Chris", ...             Age:21 ...          }, ...          "Info2": { ...             Name:"David", ...             Age:23 ...          } ...       } ...    } ... ); { "acknowledged" : true, "insertedId" : "101" }使用find()方法显示集合中的所有文档 -> db.demo413.find();这将产生以下输出 -{ "_id" : "101", "details" : { "Info1" : { "Name" : "Chris", "Age" : 21 }, "Info2" : { "Name" : "David", "Age" : 23 } } }以下是排除嵌套字段的查询 -> db.demo413.aggregate([ ...    { $project: { "details" : { $objectToArray: "$details" } } }, ...    { $project: { "details.v.Age" : 0} }, ...    { $project: { "details" : { $arrayToObject: "$details"} } } ... ]);这将产生以下输出 -{ "_id" : "101", "details" : { "Info1" : { "Name" : "Chris" }, "Info2" : { "Name" : "David" } } }

广告