找到 1660 篇文章 关于大数据分析
707 次浏览
为此,使用 $not 以及 $in。让我们创建一个包含文档的集合 -[ { id: "101", subjectid: [ "102" ] }, { id: "102", subjectid: [ "102" ] } ]以下是快照。使用 find() 方法显示集合中的所有文档 -db.collection.find()这将产生以下输出 -[ { "_id": ObjectId("5a934e000102030405000000"), "id": "101", "subjectid": [ "102" ] }, { "_id": ObjectId("5a934e000102030405000001"), "id": "102", "subjectid": [ "102" ] } ]以下是使用 $expr、$not 和 $in 获取值(排除匹配字段数组值)的查询 -db.collection.find({ $expr: { $not:{ $in: [ "$id", "$subjectid" ] } } })这将产生以下输出 -[ { "_id": ObjectId("5a934e000102030405000000"), "id": "101", "subjectid": [ "102" ] } ]
893 次浏览
要匹配数组内的多个条件,请使用 aggregate()。让我们创建一个包含文档的集合 -> db.demo84.insertOne({ ... "EmployeeDetails": [ ... {Name: 'John', Salary:45000, isMarried: true}, ... {Name: 'Chris', Salary:50000, isMarried: false} ... ] ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e2c0a3471bf0181ecc422a5") } > db.demo84.insertOne({ ... "EmployeeDetails": [ ... {Name: 'Sam', Salary:56000, isMarried: false}, ... {Name: 'Bob', Salary:50000, isMarried: false} ... ] ... } ... ); { "acknowledged" : true, ... 阅读更多
994 次浏览
要在 MongoDB 中创建一个唯一字段,请使用 unique - true。让我们创建一个包含文档的集合 -> db.demo82.createIndex({"EmployeeName":1}, {unique:true}); { "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 } > db.demo82.insertOne({"EmployeeName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bfb1b71bf0181ecc422a0") } > db.demo82.insertOne({"EmployeeName":"David"}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bfb1f71bf0181ecc422a1") } > db.demo82.insertOne({"EmployeeName":"Chris"}); 2020-01-25T13:54:00.410+0530 E QUERY [js] WriteError: E11000 duplicate key error collection: test.demo82 index: EmployeeName_1 dup key: { : "Chris" } : WriteError({ "index" : 0, "code" : 11000, "errmsg" : "E11000 duplicate key ... 阅读更多
112 次浏览
要获取子文档中的特定项目,请使用点 (.) 表示法。让我们创建一个包含文档的集合 -> db.demo81.insertOne({"StudentDetails":[{"StudentName":"Carol", "StudentSubject":"Java"}, { "StudentName" : "David", "StudentSubject" : "MongoDB" }]}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bf6ec71bf0181ecc4229d") } > db.demo81.insertOne({"StudentDetails":[{"StudentName":"Mike", "StudentSubject":"Python"}, { "StudentName" : "David", "StudentSubject" : "C" }]}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bf70471bf0181ecc4229e") } > db.demo81.insertOne({"StudentDetails":[{"StudentName":"Jace", "StudentSubject":"C++"}, { "StudentName" : "John", "StudentSubject" : "MySQL" }]}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bf72071bf0181ecc4229f") }显示使用 find() 方法显示集合中的所有文档 -> db.demo81.find();这将产生以下 ... 阅读更多
421 次浏览
要在 MongoDB 中计算平均值,请使用 $avg。让我们创建一个包含文档的集合 -> db.demo80.insertOne({"Details":{"Price":10.5}}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bf43271bf0181ecc42297") } > db.demo80.insertOne({"Details":{"Price":50.3}}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bf43871bf0181ecc42298") } > db.demo80.insertOne({"Details":{"Price":100.10}}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bf43f71bf0181ecc42299") }显示使用 find() 方法显示集合中的所有文档 -> db.demo80.find();这将产生以下输出 -{ "_id" : ObjectId("5e2bf43271bf0181ecc42297"), "Details" : { "Price" : 10.5 } } { "_id" : ObjectId("5e2bf43871bf0181ecc42298"), "Details" : { "Price" : 50.3 } } { "_id" : ObjectId("5e2bf43f71bf0181ecc42299"), "Details" : { "Price" ... 阅读更多
83 次浏览
让我们创建一个包含文档的集合 -> db.demo78.insertOne({"Name1":"Chris", "Name2":"Mike"}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bd99c71bf0181ecc4228f") } > db.demo78.insertOne({"Name1":"Bob", "Name2":"Carol"}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bd9ac71bf0181ecc42290") } > db.demo78.insertOne({"Name1":"David", "Name2":"Sam"}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bd9b671bf0181ecc42291") } > db.demo78.insertOne({"Name1":"Jace", "Name2":"John"}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bd9bf71bf0181ecc42292") }显示使用 find() 方法显示集合中的所有文档 -> db.demo78.find();这将产生以下输出 -{ "_id" : ObjectId("5e2bd99c71bf0181ecc4228f"), "Name1" : "Chris", "Name2" : "Mike" } { "_id" : ObjectId("5e2bd9ac71bf0181ecc42290"), "Name1" : "Bob", "Name2" : "Carol" } { ... 阅读更多
283 次浏览
要更新 MongoDB 对象,请使用 UPDATE()。让我们创建一个包含文档的集合 -> db.demo77.insertOne({"Details" : { "Score" : 78 } }); { "acknowledged" : true, "insertedId" : ObjectId("5e2bd6f371bf0181ecc4228a") }显示使用 find() 方法显示集合中的所有文档 -> db.demo77.find();这将产生以下输出 -{ "_id" : ObjectId("5e2bd6f371bf0181ecc4228a"), "Details" : { "Score" : 78 } }以下是更新 MongoDB 对象的查询 -> db.demo77.update({'Details.Score':78}, {$set:{'Details.Score':89}}, {multi:true}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })显示使用 find() 方法显示集合中的所有文档 -> db.demo77.find();这将产生 ... 阅读更多
319 次浏览
要实现多级 $group,可以使用 MongoDB 聚合。让我们创建一个包含文档的集合 -> db.demo76.insertOne({ Name:"Chris", "Age" : 21, "CountryName" : 'US' }); { "acknowledged" : true, "insertedId" : ObjectId("5e2bd3e571bf0181ecc42281") } > db.demo76.insertOne({ Name:"Chris", "Age" : 21, "CountryName" : 'US' }); { "acknowledged" : true, "insertedId" : ObjectId("5e2bd3e571bf0181ecc42282") } > db.demo76.insertOne({ Name:"Chris", "Age" : 23, "CountryName" : 'UK' }); { "acknowledged" : true, "insertedId" : ObjectId("5e2bd3e571bf0181ecc42283") } > db.demo76.insertOne({ Name:"Chris", "Age" : 23, "CountryName" : 'UK' }); { "acknowledged" : true, "insertedId" : ObjectId("5e2bd3e571bf0181ecc42284") } > db.demo76.insertOne({ Name:"Chris", "Age" : 21, ... 阅读更多
188 次浏览
要仅返回特定数量的元素,可以使用 aggregate() 和 $slice。让我们创建一个包含文档的集合 -> db.demo75.insertOne({"Name":["Sam", "Mike", "Carol", "David", "Bob", "John"]}); { "acknowledged" : true, "insertedId" : ObjectId("5e2bcd7671bf0181ecc42278") }使用 find() 方法显示集合中的所有文档 -> db.demo75.find();这将产生以下输出 -{ "_id" : ObjectId("5e2bcd7671bf0181ecc42278"), "Name" : [ "Sam", "Mike", "Carol", "David", "Bob", "John" ] }以下是 MongoDB 中的切片查询 -> db.demo75.aggregate([ { $project: { Name: { $slice: [ "$Name", 4 ] } } } ]);这将产生以下输出 -{ "_id" : ObjectId("5e2bcd7671bf0181ecc42278"), ... 阅读更多