找到 6705 篇文章 关于数据库

使用 MongoDB 在后台构建索引

AmitDiwan
更新于 2020年3月27日 11:32:25

2K+ 次浏览

要在后台创建索引,请使用 createIndex() 方法并将“background: true”设置为如下语法:db.yourCollectionName.createIndex({"yourFieldName1":1,"yourFieldName2":1},{background: true} );让我们实现上述语法以创建索引并设置后台-> db.indexCreationDemo.createIndex({"StudentName":1,"StudentAge":1},{background: true} ); { "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }让我们显示索引-> db.indexCreationDemo.getIndexes();这将产生以下输出:[ { "v" : 2, "key" : { " _id" : 1 }, "name" : "_id_", "ns" : "web.indexCreationDemo" }, { "v" : 2, "key" : { "StudentName" : 1, "StudentAge" : 1 }, "name" : "StudentName_1_StudentAge_1", "ns" : "web.indexCreationDemo", "background" : true } ]

修复:MongoDB Robomongo:db.data.find(…).collation 不是函数?

AmitDiwan
更新于 2020年3月27日 11:29:35

79 次浏览

MongoDB 3.4 版中引入了 collation。也许您在之前的版本中实现了 collation。在我们的示例中,我们使用的是 MongoDB 4.0.5 版。以下是检查系统当前版本的查询:-> db.version()这将产生以下输出:4.0.5让我们首先创建一个包含文档的集合:-> db.collationExample.createIndex({Value: 1}, {collation: {locale: "en", strength: 1}}); { "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 } > db.collationExample.insertOne({'Value':'x'}); { "acknowledged" : true, "insertedId" : ObjectId("5e038a3cf5e889d7a51994f5") } > db.collationExample.insertOne({'Value':'X'}); { "acknowledged" : true, "insertedId" : ObjectId("5e038a48f5e889d7a51994f6") } > ... 阅读更多

在 MongoDB 中使用排序计算每个文档的平均值?

AmitDiwan
更新于 2020年3月27日 11:26:56

164 次浏览

要计算平均值,请使用 aggregate 以及 $avg。让我们首先创建一个包含文档的集合:-> db.calculateAverage.insertOne({'Value':[10, 20, 80]}); { "acknowledged" : true, "insertedId" : ObjectId("5e0383e3f5e889d7a51994dc") } > db.calculateAverage.insertOne({'Value':[12, 15, 16]}); { "acknowledged" : true, "insertedId" : ObjectId("5e0383edf5e889d7a51994dd") } > db.calculateAverage.insertOne({'Value':[30, 35, 40]}); { "acknowledged" : true, "insertedId" : ObjectId("5e0383f5f5e889d7a51994de") }以下是使用 find() 方法显示集合中所有文档的查询:-> db.calculateAverage.find().pretty();这将产生以下输出:{ "_id" : ObjectId("5e0383e3f5e889d7a51994dc"), "Value" : [ 10, 20, ... 阅读更多

在 MongoDB 中的投影中将子字段提升到顶级,无需列出所有键?

AmitDiwan
更新于 2020年3月27日 11:23:46

148 次浏览

要在投影中将子字段提升到顶级,请使用 $objectToArray 和 $arrayToObject。让我们首先创建一个包含文档的集合:> db.promoteSubfieldsDemo.insertOne({'s':10, 'y':{'t':20, 'u':30, }}); { "acknowledged" : true, "insertedId" : ObjectId("5e038004190a577c668b55d5") }以下是使用 find() 方法显示集合中所有文档的查询:-> db.promoteSubfieldsDemo.find().pretty();这将产生以下输出:{ "_id" : ObjectId("5e038004190a577c668b55d5"), "s" : 10, "y" : { "t" : 20, "u" : 30 } }以下是无需列出所有键即可将子字段提升到顶级投影中的查询: ... 阅读更多

从 MongoDB 中嵌套在另一个数组内的数组中删除特定记录

AmitDiwan
更新于 2020年3月27日 11:14:03

592 次浏览

要删除特定记录,请使用“$pull”,并且由于我们正在更新已创建的集合,因此请使用 UPDATE()。让我们创建一个包含文档的集合:-> db.demo213.insertOne({ ... "id": 101, ... "details1": [ ... { ... "Name": "Chris", ... "details2": [ ... { ... "StudentName": "David", ... "Subject": "MongoDB" ... }, ... { ... ... 阅读更多

通过单词查找 MongoDB 文档

AmitDiwan
更新于 2020年3月27日 11:09:12

132 次浏览

要通过单词查找 MongoDB 文档,请使用 find() 并设置如下所示的单词:word/i让我们创建一个包含文档的集合:-> db.demo212.insertOne({"details":[{"Name":"John Doe"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5e3e2c7603d395bdc21346ff") } > db.demo212.insertOne({"details":[{"Name":"Chris Brown"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5e3e2c8003d395bdc2134700") } > db.demo212.insertOne({"details":[{"Name":"Robert doe"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5e3e2c8a03d395bdc2134701") }使用 find() 方法显示集合中的所有文档:-> db.demo212.find();这将产生以下输出:{ "_id" : ObjectId("5e3e2c7603d395bdc21346ff"), "details" : [ { "Name" : "John Doe" } ] } { "_id" : ObjectId("5e3e2c8003d395bdc2134700"), "details" : ... 阅读更多

如何在 MongoDB 条件对象中测试两个外部值是否相等?

AmitDiwan
更新于 2020年3月27日 11:07:25

63 次浏览

要测试这些值,请使用 $type。让我们创建一个包含文档的集合:-> db.demo211.insertOne({id:101, "Name":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5e3e298203d395bdc21346fa") } > db.demo211.insertOne({id:102, "Name":null}); { "acknowledged" : true, "insertedId" : ObjectId("5e3e2a5403d395bdc21346fb") }使用 find() 方法显示集合中的所有文档:-> db.demo211.find();这将产生以下输出:{ "_id" : ObjectId("5e3e298203d395bdc21346fa"), "id" : 101, "Name" : "Chris" } { "_id" : ObjectId("5e3e2a5403d395bdc21346fb"), "id" : 102, "Name" : null }以下是测试 MongoDB 条件对象中两个外部值是否相等的查询:-> v1=200; 200 > v2=200; ... 阅读更多

获取 MongoDB 中特定值的计数

AmitDiwan
更新于 2020年3月27日 11:05:25

364 次浏览

要获取 MongoDB 中特定值的计数,请使用 aggregate()。让我们创建一个包含文档的集合:-> db.demo210.insertOne( ... { ... details: [ ... { ... ClientName: "Robert" ... }, ... { ... lientName: "John Doe" ... }, ... { ... ClientName: "Robert" ... }, ... { ... ... 阅读更多

MongoDB 查询,用于转换字段值并在投影期间创建日期时间的月份?

AmitDiwan
更新于 2020年3月27日 10:58:16

243 次浏览

要将字段值转换为创建日期时间的月份日,可以使用 MongoDB 的 aggregate() 方法。让我们创建一个包含文档的集合:-> db.demo209.insertOne( ...   { ...      "_id" : "101", ...      "details" : [ ...         { ...            "dat" : 1528929908, ...            "Name" : "Chris" ...         }, ...         { ...            "dat" : 1529082069, ...            "Name":"Carol" ...         } ...      ], ... ... 阅读更多

MongoDB 查询:将数字字符串转换为数字

AmitDiwan
更新于 2020年3月27日 10:51:41

544 次浏览

要将数字字符串转换为数字,可以使用 MongoDB 中的 parseInt() 函数。让我们创建一个包含文档的集合:-> db.demo208.insertOne( { "value":"50"} ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3d92d803d395bdc21346f6") } > db.demo208.insertOne( { "value":"2350"} ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e3d92dd03d395bdc21346f7") } 使用 find() 方法显示集合中的所有文档:-> db.demo208.find(); 这将产生以下输出:{ "_id" : ObjectId("5e3d92d803d395bdc21346f6"), "value" : "50" } { "_id" : ObjectId("5e3d92dd03d395bdc21346f7"), "value" : "2350" } 以下是将数字字符串转换为数字的查询:-> db.demo208.find().forEach( function (doc) { ...   doc.value = parseInt(doc.value); ... 阅读更多

广告