找到 1349 篇文章 相关 MongoDB

实现 MongoDB 聚合 - unwind、group 和 project?

AmitDiwan
更新于 2020-03-30 13:24:15

2K+ 次浏览

MongoDB 中的 $unwind 将输入文档中的数组字段解构,为每个元素输出一个文档。$group 用于根据指定的 _id 表达式对输入文档进行分组,并为每个不同的分组输出一个文档。$project 用于将具有请求字段的文档传递到管道中的下一阶段。让我们创建一个包含文档的集合 -> db.demo238.insertOne( ...   { ... ...      "EmailId" : "[email protected]", ...      "details" : [ ...         { ...            "Name" : "Bob", ...         ... 阅读更多

通过 MongoDB 中的投影删除嵌套文档中除单个字段外的所有字段

AmitDiwan
更新于 2020-03-30 13:19:59

278 次浏览

将您不想包含的字段设置为 0。这将在使用 find() 时显示其余值。让我们首先创建一个包含文档的集合 -> db.demo237.insertOne({ ...   _id:101, ...   Product: { ...      description1: {id:1001 }, ...      description2: {Name:"Product-1" }, ...      description3: {Price:550 } ...   } ...} ...); { "acknowledged" : true, "insertedId" : 101 }使用 find() 方法显示集合中的所有文档 -> db.demo237.find().pretty();这将产生以下输出 -{    "_id" : 101,    "Product" : {       "description1" : ... 阅读更多

如何在 MongoDB 中对子文档进行排序、选择和查询?

AmitDiwan
更新于 2020-03-30 13:18:27

191 次浏览

要排序,请在 MongoDB 中使用 $sort。让我们创建一个包含文档的集合 -> db.demo236.insertOne({"details":{"Name":"Chris", "Age":21}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e419015f4cebbeaebec514c") } > db.demo236.insertOne({"details":{"Name":"David", "Age":23}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e41901cf4cebbeaebec514d") } > db.demo236.insertOne({"details":{"Name":"Bob", "Age":24}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e419023f4cebbeaebec514e") }使用 find() 方法显示集合中的所有文档 -> db.demo236.find();这将产生以下输出 -{ "_id" : ObjectId("5e419015f4cebbeaebec514c"), "details" : { "Name" : "Chris", "Age" : 21 } } { "_id" : ObjectId("5e41901cf4cebbeaebec514d"), "details" : { "Name" : "David", "Age" : 23 } } ... 阅读更多

MongoDB 中是否有任何方法可以获取 json 数据的内部值?

AmitDiwan
更新于 2020-03-30 13:16:30

146 次浏览

要获取 JSON 数据的内部值,请将 find() 与点 (.) 表示法一起使用。让我们创建一个包含文档的集合 -> db.demo235.insertOne( ...   { ...      "id":101, ...      "details":[ ...         { ...            "Name":"Chris Brown", ...            "Age":21 ...         }, ...         { ...            "Name":"David Miller", ...            "Age":24 ...         } ...      ], ...      "otherdetails":[ ...         ... 阅读更多

MongoDB 查询以获取没有特定字段的文档?

AmitDiwan
更新于 2020-03-30 13:14:08

489 次浏览

要检查是否存在,请使用 $exists。让我们创建一个包含文档的集合 - > db.demo234.insertOne({"FirstName":"Chris", "LastName":"Brown", "Age":24}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e418a50f4cebbeaebec5148") } > db.demo234.insertOne({"FirstName":"David", "LastName":"Miller"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e418a5ff4cebbeaebec5149") } > db.demo234.insertOne({"FirstName":"John", "LastName":"Smith", Age:34}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e418a70f4cebbeaebec514a") }使用 find() 方法显示集合中的所有文档 -> db.demo234.find();这将产生以下输出 -{ "_id" : ObjectId("5e418a50f4cebbeaebec5148"), "FirstName" : "Chris", "LastName" : "Brown", "Age" : 24 } { "_id" : ObjectId("5e418a5ff4cebbeaebec5149"), "FirstName" : "David", "LastName" : "Miller" } { "_id" : ... 阅读更多

如何在 MongoDB 中限制从字段返回的字符数?

AmitDiwan
更新于 2020-03-30 13:12:40

381 次浏览

要限制从字段返回的字符数,请在 MongoDB 中使用 $substr。让我们创建一个包含文档的集合 -> db.demo233.insertOne({"Paragraph":"My Name is John Smith.I am learning MongoDB database"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e41877df4cebbeaebec5146") } > db.demo233.insertOne({"Paragraph":"David Miller is a good student and learning Spring and Hibernate Framework."}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e4187d7f4cebbeaebec5147") }使用 find() 方法显示集合中的所有文档 -> db.demo233.find().pretty();这将产生以下输出 -{    "_id" : ObjectId("5e41877df4cebbeaebec5146"),    "Paragraph" : "My Name is John Smith.I am learning MongoDB database" } ... 阅读更多

使用 MongoDB 聚合和 GroupBy 获取名称记录的频率

AmitDiwan
更新于 2020-03-30 13:09:36

128 次浏览

让我们首先创建一个包含文档的集合 -> db.demo232.insertOne({_id:101, Name:"Chris"}); { "acknowledged" : true, "insertedId" : 101 } > db.demo232.insertOne({_id:102, Name:"Bob"}); { "acknowledged" : true, "insertedId" : 102 } > db.demo232.insertOne({_id:103, Name:"Bob"}); { "acknowledged" : true, "insertedId" : 103 } > db.demo232.insertOne({_id:104, Name:"David"}); { "acknowledged" : true, "insertedId" : 104 } > db.demo232.insertOne({_id:105, Name:"Chris"}); { "acknowledged" : true, "insertedId" : 105 }使用 find() 方法显示集合中的所有文档 -> db.demo232.find();这将产生以下输出 -{ "_id" : 101, "Name" : "Chris" } { "_id" : 102, "Name" : "Bob" } { "_id" : ... 阅读更多

在 MongoDB 中汇总数组大小字段的最佳方法?

AmitDiwan
更新于 2020-03-30 13:08:38

853 次浏览

要对数组大小字段求和,请将 $sum 与 $size 一起使用。让我们创建一个包含文档的集合 -> db.demo231.insertOne({"Subjects":["MongoDB", "MySQL", "SQL Server"]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3fc73ff4cebbeaebec5143") } > db.demo231.insertOne({"Subjects":["Java", "C", "C++"]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3fc757f4cebbeaebec5144") } > db.demo231.insertOne({"Subjects":["Python", "Spring"]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3fc762f4cebbeaebec5145") }使用 find() 方法显示集合中的所有文档 -> db.demo231.find();这将产生以下输出 -{ "_id" : ObjectId("5e3fc73ff4cebbeaebec5143"), "Subjects" : [ "MongoDB", "MySQL", "SQL Server" ] } { "_id" : ObjectId("5e3fc757f4cebbeaebec5144"), "Subjects" : [ "Java", "C", ... 阅读更多

MongoDB 中 findOne() 的用法?

AmitDiwan
更新于 2020-03-30 13:06:17

317 次浏览

MongoDB 中的 findOne() 仅返回单个文档。让我们创建一个包含文档的集合 -> db.demo230.insertOne({"FirstName":"Chris"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3fc4d2f4cebbeaebec513e") } > db.demo230.insertOne({"FirstName":"Bob"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3fc4d5f4cebbeaebec513f") } > db.demo230.insertOne({"FirstName":"Chris"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3fc4dbf4cebbeaebec5140") } > db.demo230.insertOne({"FirstName":"David"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3fc4dff4cebbeaebec5141") } > db.demo230.insertOne({"FirstName":"David"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3fc4e1f4cebbeaebec5142") }使用 find() 方法显示集合中的所有文档 -> db.demo230.find();这将产生以下输出 -{ "_id" : ObjectId("5e3fc4d2f4cebbeaebec513e"), "FirstName" : ... 阅读更多

将 MongoDB 中的唯一索引更改为稀疏唯一索引?

AmitDiwan
更新于 2020-03-30 13:04:51

142 次浏览

对于稀疏索引,使用 sparse:true。以下是创建索引的查询 -> db.demo229.ensureIndex({"ClientName":1}, {unique: true}); {    "createdCollectionAutomatically" : true,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 }以下是显示索引的查询 -> db.demo229.getIndexes();这将产生以下输出 -[    {       "v" : 2,       "key" : {          "_id" : 1       },       "name" : "_id_",       "ns" : "test.demo229"    },    {       "v" : 2,       "unique" ... 阅读更多

广告