找到 1349 篇文章 关于 MongoDB

检查 MongoDB 中内部数组中特定字段的重复项

AmitDiwan
更新于 2020年4月2日 07:48:40

371 次浏览

要检查内部数组中的重复项,请在 MongoDB 中使用 aggregate()。让我们创建一个包含文档的集合 -> db.demo347.insertOne( ...    { ...       "details": { ...          "details1": [ ...             { ...                Name: "Chris", ...                Age: 21 ...             } ... ...          ] ...       } ...    } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e5532eaf8647eb59e5620af") } > ... 阅读更多

基于范围在 MongoDB 中查询嵌入式文档的数组?

AmitDiwan
更新于 2020年4月2日 07:44:54

163 次浏览

要基于范围查询嵌入式文档的数组,请使用 aggregate()。让我们创建一个包含文档的集合 -> db.demo346.insertOne( ...    { ...       _id: 101, ...       userDetails: [ ...          { UserName: "Chris", Score:78}, ...          { UserName: "David", Score:68}, ...          { UserName: "Bob", Score:88} ...       ] ...    } ... ); { "acknowledged" : true, "insertedId" : 101 } > db.demo346.insertOne( ...    { ...       _id: 102, ...       userDetails: [ ...   ... 阅读更多

MongoDB 查询以查找并返回符合条件的子文档?

AmitDiwan
更新于 2020年4月2日 07:40:05

497 次浏览

让我们创建一个包含文档的集合 -> db.demo345.insertOne({ ...    "UserName" : "Robert", ...       "UserDetails" : [ ...          { ...             "isMarried" : false, ...             "CountryName":"US" ... ...          }, ...          { ...             "isMarried" : true, ...             "CountryName":"UK" ... ...          }, ...          { ...             "isMarried" : false, ... ... 阅读更多

如何在 MongoDB 中查询具有最长时间段的对象?

AmitDiwan
更新于 2020年4月2日 07:36:09

120 次浏览

让我们创建一个包含文档的集合 -> db.demo344.insertOne({"startDate":"2020-02-24 10:50:00", "endDate":"2020-02-24 11:50:00"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e53f52cf8647eb59e5620aa") } > db.demo344.insertOne({"startDate":"2020-02-24 08:00:00", "endDate":"2020-02-24 11:50:50"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e53f53df8647eb59e5620ab") }使用 find() 方法显示集合中的所有文档 -> db.demo344.find();这将产生以下输出 -{ "_id" : ObjectId("5e53f52cf8647eb59e5620aa"), "startDate" : "2020-02-24 10:50:00", "endDate" : "2020-02-24 11:50:00" } { "_id" : ObjectId("5e53f53df8647eb59e5620ab"), "startDate" : "2020-02-24 08:00:00", "endDate" : "2020-02-24 11:50:50" }以下是查询具有最长时间段的对象的方法 -> db.demo344.aggregate([ ...    { $addFields: { ...   ... 阅读更多

如何将 ObjectId 数组转换为包含原始数组元素值的字段的嵌入式文档数组?

AmitDiwan
更新于 2020年4月2日 07:34:12

57 次浏览

对于此类转换,请使用聚合。让我们创建一个包含文档的集合 -> db.demo343.insertOne({ ...    _id: 101, ...    UserName: "Chris", ...    details: [ ...       {"Name":"John"}, ...       {"Name":"David"} ...    ] ... } ... ); { "acknowledged" : true, "insertedId" : 101 }使用 find() 方法显示集合中的所有文档 -> db.demo343.find().pretty();这将产生以下输出 -{    "_id" : 101,    "UserName" : "Chris",    "details" : [       {          "Name" : "John"       },       ... 阅读更多

MongoDB 查询以仅获取嵌套数组文档中的特定字段?

AmitDiwan
更新于 2020年4月2日 07:30:22

762 次浏览

要仅获取嵌套数组文档中的特定字段,请使用 $filter 以及 $project。让我们创建一个包含文档的集合 -> db.demo342.insertOne({ ...    "Id": "101", ...       "details1" : { ...          "details2" : [ ...             { ...                "details3" : [ ...                   { ...                      "Name": "Mike", ...                      "CountryName" : "US" ... ... 阅读更多

MongoDB 查询以在具有多个条件(范围)的数组中查找值

AmitDiwan
更新于 2020年4月2日 07:26:04

399 次浏览

要在范围内查找数组中的值,请使用 $gt 和 $lt。让我们创建一个包含文档的集合 -> db.demo341.insertOne({ ...    "Name": "Chris", ...       "productDetails" : [ ...          { ...             "ProductPrice" : { ...             "Price" : 800 ...          } ...       }, ...       { ...          "ProductPrice" : { ...             "Price" : 400 ...          } ... ... 阅读更多

MongoDB findById 返回文档列表而不是单个结果?如何仅获取单个文档?

AmitDiwan
更新于 2020年4月2日 07:20:53

200 次浏览

要仅获取单个结果,请使用 findOne() 并根据 id 获取。让我们创建一个包含文档的集合 -> db.demo340.insertOne({_id:1, "Name":"Chris", Age:21}); { "acknowledged" : true, "insertedId" : 1 } > db.demo340.insertOne({_id:2, "Name":"David", Age:23}); { "acknowledged" : true, "insertedId" : 2 } > db.demo340.insertOne({_id:3, "Name":"Bob", Age:20}); { "acknowledged" : true, "insertedId" : 3 } > db.demo340.insertOne({_id:4, "Name":"Sam", Age:19}); { "acknowledged" : true, "insertedId" : 4 }使用 find() 方法显示集合中的所有文档 -> db.demo340.find();这将产生以下输出 -{ "_id" : 1, "Name" : "Chris", "Age" : 21 } { ... 阅读更多

使用 MongoDB 将两个数组压缩并创建以重塑形式的新对象数组

AmitDiwan
更新于 2020年4月2日 07:19:19

172 次浏览

为此,请使用聚合以及 $zip。zip 用于转置数组。让我们创建一个包含文档的集合 -> db.demo339.insertOne({Id:101, Score1:["98", "56"], Score2:[67, 89]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e529ee5f8647eb59e5620a2") }使用 find() 方法显示集合中的所有文档 -> db.demo339.find();这将产生以下输出 -{ "_id" : ObjectId("5e529ee5f8647eb59e5620a2"), "Id" : 101, "Score1" : [ "98", "56" ], "Score2" : [ 67, 89 ] }以下是使用 $zip 将两个数组压缩并创建新的对象数组的查询 -> db.demo339.aggregate([ ...    { ...     ... 阅读更多

在现有多维数组字段上使用 MongoDB $concatArrays 在 $project 中

AmitDiwan
更新于 2020年4月2日 07:15:05

321 次查看

$concatArrays 用于连接数组以返回连接后的数组。让我们创建一个包含文档的集合 -> db.demo338.insertOne({"Name":"Chris", "Marks1":[ [56, 67, 45], [67, 89, 90, 91]]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e5299baf8647eb59e56209f") }使用 find() 方法显示集合中的所有文档 -> db.demo338.find().pretty();这将产生以下输出 -{    "_id" : ObjectId("5e5299baf8647eb59e56209f"),    "Name" : "Chris",    "Marks1" : [       [          56,          67,          45       ],       [         ... 阅读更多

广告