找到 6705 篇文章 关于数据库

如何在不覆盖现有数据的情况下更新 MongoDB 文档?

AmitDiwan
更新于 2020年4月3日 12:42:07

728 次浏览

要仅更新字段值,请使用 update() 和 $set。这不会覆盖现有数据。让我们先创建一个包含文档的集合 −> db.demo401.insertOne( ...    { ...       "_id" : 1001, ...       "Name" : "Chris", ...       "SubjectName" : "MongoDB", ...       "Score" : 45 ...    } ... ); { "acknowledged" : true, "insertedId" : 1001 }使用 find() 方法显示集合中的所有文档 −> db.demo401.find();这将产生以下输出 −{ "_id" : 1001, "Name" : "Chris", "SubjectName" : "MongoDB", "Score" ... 阅读更多

如何使用 LIMIT 查询 MongoDB?

AmitDiwan
更新于 2020年4月3日 12:41:18

157 次浏览

要使用 limit 查询 MongoDB,请使用 LIMIT() 方法。让我们创建一个包含文档的集合 −> db.demo58.insertOne({"Name":"David"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e285f8fcfb11e5c34d8991f") } > db.demo58.insertOne({"Name":"David"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e285f93cfb11e5c34d89920") } > db.demo58.insertOne({"Name":"David"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e285f94cfb11e5c34d89921") } > db.demo58.insertOne({"Name":"Mike"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e285f99cfb11e5c34d89922") }使用 find() 方法显示集合中的所有文档 −> db.demo58.find();这将产生以下输出 −{ "_id" : ObjectId("5e285f8fcfb11e5c34d8991f"), "Name" : "David" } { "_id" : ObjectId("5e285f93cfb11e5c34d89920"), "Name" : "David" } { "_id" : ... 阅读更多

MongoDB 查询仅更新投票(向上和向下)记录中的单个项目?

AmitDiwan
更新于 2020年4月3日 12:39:49

91 次浏览

让我们先创建一个包含文档的集合 −> db.demo57.insertOne({"Votes":{"VoterName":"Chris", "TotalVote":50}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e285bb8cfb11e5c34d8991a") } > db.demo57.insertOne({"Votes":{"VoterName":"David", "TotalVote":101}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e285bc3cfb11e5c34d8991b") }使用 find() 方法显示集合中的所有文档 −> db.demo57.find();这将产生以下输出 −{ "_id" : ObjectId("5e285bb8cfb11e5c34d8991a"), "Votes" : { "VoterName" : "Chris", "TotalVote" : 50 } } { "_id" : ObjectId("5e285bc3cfb11e5c34d8991b"), "Votes" : { "VoterName" : "David", "TotalVote" : 101 } }以下是仅更新单个项目 (TotalVote) 的查询 −> db.demo57.update({"Votes.VoterName":"David" }, { $inc : { "Votes.TotalVote" ... 阅读更多

如何在 MongoDB 未建立索引的字段上高效运行复杂查询?

AmitDiwan
更新于 2020年4月3日 12:40:09

215 次浏览

创建索引以高效运行复杂查询。让我们先创建一个包含文档的集合 −> db.demo400.insertOne({SubjectName:"Java Spring"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e610720fac4d418a0178572") } > db.demo400.insertOne({SubjectName:"Spring Hibernate"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e61072dfac4d418a0178573") } > db.demo400.insertOne({SubjectName:"Java Hibernate"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e610736fac4d418a0178574") } > db.demo400.createIndex({SubjectName:"text"}); {    "createdCollectionAutomatically" : false,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 }使用 find() 方法显示集合中的所有文档 −> db.demo400.find();这将产生以下输出 −{ "_id" : ObjectId("5e610720fac4d418a0178572"), "SubjectName" : "Java ... 阅读更多

删除特定 MongoDB 文档的查询

AmitDiwan
更新于 2020年4月3日 12:39:02

147 次浏览

要删除特定文档,请在 MongoDB 中使用 remove()。让我们创建一个包含文档的集合 −> db.demo56.insertOne({"Name":"Chris"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e272e0bcfb11e5c34d89917") } > db.demo56.insertOne({"Name":"David"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e272e10cfb11e5c34d89918") } > db.demo56.insertOne({"Name":"Bob"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e272e13cfb11e5c34d89919") }使用 find() 方法显示集合中的所有文档 −> db.demo56.find();这将产生以下输出 −{ "_id" : ObjectId("5e272e0bcfb11e5c34d89917"), "Name" : "Chris" } { "_id" : ObjectId("5e272e10cfb11e5c34d89918"), "Name" : "David" } { "_id" : ObjectId("5e272e13cfb11e5c34d89919"), "Name" : "Bob" }以下是删除... 阅读更多

如何在 MongoDB 中推送数组?

AmitDiwan
更新于 2020年4月3日 12:38:25

439 次浏览

要推送数组,请在 MongoDB 中使用 $push。让我们先创建一个包含文档的集合 −> db.demo399.insertOne({Name:"Chris", Age:21}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e610339fac4d418a017856d") } > db.demo399.insertOne({Name:"David", Age:22}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e610341fac4d418a017856e") } > db.demo399.insertOne({Name:"Chris", Age:21}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e610355fac4d418a017856f") } > db.demo399.insertOne({Name:"Bob", Age:23}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e61035efac4d418a0178570") } > db.demo399.insertOne({Name:"David", Age:22}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e610364fac4d418a0178571") }使用 find() 方法显示集合中的所有文档 −> db.demo399.find();这将产生以下输出 −{ ... 阅读更多

如何复制 MongoDB 中的属性?

AmitDiwan
更新于 2020年4月3日 12:37:39

463 次浏览

要将一个属性的值复制到另一个属性,请使用 $set 和 update()。让我们先创建一个包含文档的集合 −> db.demo55.insertOne({"ShippingDate":'', "date":new ISODate("2019-01-21")}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e2716dfcfb11e5c34d89915") } > db.demo55.insertOne({"ShippingDate":'', "date":new ISODate("2020-05-12")}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e2716ebcfb11e5c34d89916") }使用 find() 方法显示集合中的所有文档 −> db.demo55.find();这将产生以下输出 −{ "_id" : ObjectId("5e2716dfcfb11e5c34d89915"), "ShippingDate" : "", "date" : ISODate("2019-01-21T00:00:00Z") } { "_id" : ObjectId("5e2716ebcfb11e5c34d89916"), "ShippingDate" : "", "date" : ISODate("2020-05-12T00:00:00Z") }以下是复制 MongoDB 属性的查询 −> db.demo55.find({}).forEach(function(c){ ... ... 阅读更多

设置带范围的 MongoDB $slice?

AmitDiwan
更新于 2020年4月3日 12:35:28

207 次浏览

要设置带范围的 slice,请使用带参数的 $slice 运算符。这些参数用于设置要获取的元素的起始位置,第二个参数用于设置范围。让我们创建一个包含文档的集合 −> db.demo54.insertOne({"ListOfValues":[100, 2030, 5353, 7364, 635, 535, 524, 423, 2434, 1323, 799874, 90]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e27151ecfb11e5c34d89914") }使用 find() 方法显示集合中的所有文档 −> db.demo54.find().pretty();这将产生以下输出 −{    "_id" : ObjectId("5e27151ecfb11e5c34d89914"),    "ListOfValues" : [       100,       2030, ... 阅读更多

将数组转换为具有 n 个属性的文档映射的 MongoDB 查询?

AmitDiwan
更新于 2020年4月3日 12:36:17

721 次浏览

为此,您可以使用 $map。让我们先创建一个包含文档的集合 −> db.demo398.insertOne({ ...    "details":[ ...       { ...          "Name":"Chris", ...          "Age":22 ...       } ...    ] ... } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e5e8cedfac4d418a017856c") }使用 find() 方法显示集合中的所有文档 −> db.demo398.find();这将产生以下输出 −{ "_id" : ObjectId("5e5e8cedfac4d418a017856c"), "details" : [ { "Name" : "Chris", "Age" : 22 } ] }以下是将数组... 阅读更多

如何为 MongoDB 中多个字段建立索引以实现“或”条件索引?

AmitDiwan
更新于 2020年4月3日 12:33:44

241 次浏览

要索引多个字段,请对组合使用 ensureIndex()。使用 ensureIndex(),我们可以创建一个索引,甚至可以传递多个字段。让我们创建一个包含文档的集合 -> db.demo53.ensureIndex({"StudentFirstName":1, "StudentAge":1}); {    "createdCollectionAutomatically" : true,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 } > db.demo53.ensureIndex({"StudentFirstName":1, "StudentCountryName":1}); {    "createdCollectionAutomatically" : false,    "numIndexesBefore" : 2,    "numIndexesAfter" : 3,    "ok" : 1 } >db.demo53.insertOne({"StudentFirstName":"Chris", "StudentAge":21, "StudentCountryName":"US"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e271431cfb11e5c34d89911") } >db.demo53.insertOne({"StudentFirstName":"David", "StudentAge":23, "StudentCountryName":"UK"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e27143ccfb11e5c34d89912") } >db.demo53.insertOne({"StudentFirstName":"Mike", "StudentAge":24, "StudentCountryName":"AUS"}); { ... 阅读更多

广告