找到 1349 篇文章 关于 MongoDB

155 次查看
您需要使用自定义逻辑,借助 while 循环以及 find() 游标。让我们创建一个包含文档的集合 -> db.demo724.insertOne( ... { ... details: ... { ... id:101, ... otherDetails:[ ... {Name:"Chris"} ... ] ... } ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5eab0cce43417811278f5890") } > > > db.demo724.insertOne( ... { ... ... } ... ); { "acknowledged" : true, ... 阅读更多

683 次查看
要计算特定字段的数组元素,请在 MongoDB 中使用 $size。让我们创建一个包含文档的集合 -> db.demo723.insertOne({"Subject":["MySQL", "MongoDB"]}); { "acknowledged" : true, "insertedId" : ObjectId("5eab094d43417811278f588a") } > db.demo723.insertOne({"Subject":["C"]}); { "acknowledged" : true, "insertedId" : ObjectId("5eab095243417811278f588b") } > db.demo723.insertOne({"Subject":["C++", "Java", "Python"]}); { "acknowledged" : true, "insertedId" : ObjectId("5eab095f43417811278f588c") }显示使用 find() 方法从集合中获取所有文档 -> db.demo723.find();这将产生以下输出 -{ "_id" : ObjectId("5eab094d43417811278f588a"), "Subject" : [ "MySQL", "MongoDB" ] } { "_id" : ObjectId("5eab095243417811278f588b"), "Subject" : [ "C" ] } { "_id" : ... 阅读更多

2K+ 次查看
要忽略 MongoDB 中的空值,请在 aggregate() 中使用 "$ne" : null。让我们创建一个包含文档的集合 -> db.demo722.insertOne( ... { ... id:101, ... details: [ ... { Name:""}, ... { Name: "David"}, ... {Name:null}, ... {Name:"Carol"} ... ] ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5eab07d543417811278f5889") }显示使用 find() 方法从集合中获取所有文档 -> db.demo722.find();这将产生以下输出 ... 阅读更多

735 次查看
要按多个字段计数,请在 MongoDB 中使用 facet。facet 在同一组输入文档上的单个阶段中处理多个聚合管道。让我们创建一个包含文档的集合 -> db.demo721.insertOne( ... { ... ... "details1": { ... "id":101 ... ... }, ... "details2": { ... "id":101 ... }, ... "details3": { ... "id":101 ... } ... } ... ); { "acknowledged" : ... 阅读更多

223 次查看
要更新所有值,请使用 update() 以及 multi:true。让我们创建一个包含文档的集合 -> db.demo720.insertOne({"SubjectName":"MySQL"}); { "acknowledged" : true, "insertedId" : ObjectId("5eaae7ca43417811278f5883") } > db.demo720.insertOne({"SubjectName":"Java"}); { "acknowledged" : true, "insertedId" : ObjectId("5eaae7ce43417811278f5884") } > db.demo720.insertOne({"SubjectName":"C"}); { "acknowledged" : true, "insertedId" : ObjectId("5eaae7d143417811278f5885") } > db.demo720.insertOne({"SubjectName":"C++"}); { "acknowledged" : true, "insertedId" : ObjectId("5eaae7d543417811278f5886") }显示使用 find() 方法从集合中获取所有文档 -> db.demo720.find();这将产生以下输出 -{ "_id" : ObjectId("5eaae7ca43417811278f5883"), "SubjectName" : "MySQL" } { "_id" : ObjectId("5eaae7ce43417811278f5884"), "SubjectName" : "Java" } { ... 阅读更多

387 次查看
要添加新字段,请在 MongoDB 中使用 $addFields。让我们创建一个包含文档的集合 -> db.demo719.insertOne( ... { ... "Number":"7374644", ... "details" : { ... "otherDetails" : [ ... { ... "ProductId" :"102", ... "ProductPrice" : NumberInt(500) ... }, ... { ... "ProductId" :"103", ... ... 阅读更多

320 次查看
要仅显示唯一记录,请在 MongoDB 中使用 distinct()。让我们创建一个包含文档的集合 -> db.demo613.insertOne({"Name":"Chris"});{ "acknowledged" : true, "insertedId" : ObjectId("5e988bd4f6b89257f5584d88") } > db.demo613.insertOne({"Name":"Bob"});{ "acknowledged" : true, "insertedId" : ObjectId("5e988bdbf6b89257f5584d89") } > db.demo613.insertOne({"Name":"Bob"});{ "acknowledged" : true, "insertedId" : ObjectId("5e988bddf6b89257f5584d8a") } > db.demo613.insertOne({"Name":"David"});{ "acknowledged" : true, "insertedId" : ObjectId("5e988be0f6b89257f5584d8b") } > db.demo613.insertOne({"Name":"Chris"});{ "acknowledged" : true, "insertedId" : ObjectId("5e988be2f6b89257f5584d8c") } > db.demo613.insertOne({"Name":"Sam"});{ "acknowledged" : true, "insertedId" : ObjectId("5e988be8f6b89257f5584d8d") }显示使用 find() 方法从集合中获取所有文档 -> db.demo613.find();这将产生以下输出 -{ "_id" : ObjectId("5e988bd4f6b89257f5584d88"), "Name" : ... 阅读更多

219 次查看
使用 MongoDB $exists 检查特定字段。如果该字段不存在于文档中,则需要使用 find() 显示相同的文档。让我们创建一个包含文档的集合 -> db.demo612.insertOne({id:1, "Info":[{Name:"Chris", Age:21}, {Name:"David"}]});{ "acknowledged" : true, "insertedId" : ObjectId("5e987372f6b89257f5584d87") }显示使用 find() 方法从集合中获取所有文档 -> db.demo612.find().pretty();这将产生以下输出 -{ "_id" : ObjectId("5e987372f6b89257f5584d87"), "id" : 1, "Info" : [ { "Name" : "Chris", "Age" : 21 }, ... 阅读更多

122 次查看
要在 MongoDB 4 中对文档进行排序,请使用 sort()。要仅显示一个已排序的字段,请将其设置为 1。让我们创建一个包含文档的集合 -> db.demo611.insertOne({"Name":"Chris"});{ "acknowledged" : true, "insertedId" : ObjectId("5e987110f6b89257f5584d83") } > db.demo611.insertOne({"Name":"Adam"});{ "acknowledged" : true, "insertedId" : ObjectId("5e987115f6b89257f5584d84") } > db.demo611.insertOne({"Name":"John"});{ "acknowledged" : true, "insertedId" : ObjectId("5e987118f6b89257f5584d85") } > db.demo611.insertOne({"Name":"Bob"});{ "acknowledged" : true, "insertedId" : ObjectId("5e98711bf6b89257f5584d86") }显示使用 find() 方法从集合中获取所有文档 -> db.demo611.find(); 这将产生以下输出: { "_id" : ObjectId("5e987110f6b89257f5584d83"), "Name" : "Chris" } { "_id" : ObjectId("5e987115f6b89257f5584d84"), "Name" : ... 阅读更多

196 次查看
要将数组的子集元素加在一起,请使用 first以及sum。让我们创建一个包含文档的集合 -> db.demo610.insertOne({Values:[10, 20, 30, 40, 50]});{ "acknowledged" : true, "insertedId" : ObjectId("5e9747b8f57d0dc0b182d62e") }显示使用 find() 方法从集合中获取所有文档 -> db.demo610.find().pretty()这将产生以下输出 -{ "_id" : ObjectId("5e9747b8f57d0dc0b182d62e"), "Values" : [ 10, 20, 30, 40, 50 ] }以下是将数组的子集元素加在一起的查询 ... 阅读更多