找到 1349 篇文章 关于 MongoDB
139 次查看
对于唯一索引,在创建索引时设置 unique - true。让我们创建一个包含文档的集合 -> db.demo658.createIndex({FirstName:1}, {unique:true, sparse:true}); { "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 } > > db.demo658.insertOne({"FirstName":"John", "LastName":"Smith"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea067144deddd72997713d9") } > db.demo658.insertOne({"FirstName":"Adam", "LastName":"Smith"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea0671c4deddd72997713da") } > db.demo658.insertOne({"FirstName":"John", "LastName":"Doe"}); 2020-04-22T21:17:46.072+0530 E QUERY [js] WriteError: E11000 duplicate key error collection: onlinecustomertracker.demo658 index: FirstName_1 dup key: { : "John" } : WriteError({ "index" : 0, "code" : 11000, ... 阅读更多
119 次查看
要按日期分组,请在 MongoDB 聚合中使用 $group。让我们创建一个包含文档的集合 -> db.demo657.insertOne({ ... id: 1, ... Name: "Chris", ... DueDate: new ISODate("2020-04-22") ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5ea064b44deddd72997713d6") } > db.demo657.insertOne( ... { ... id: 1, ... Name: "John", ... DueDate: new ISODate("2020-04-22") ... } ...); { "acknowledged" : true, "insertedId" : ObjectId("5ea064b44deddd72997713d7") } > db.demo657.insertOne( ... { ... id: 1, ... Name: "Chris", ... DueDate: new ISODate("2020-04-22") ... ... 阅读更多
194 次查看
要在 MongoDB 中使用 push 和 slice,请使用 $push 和 $slice。让我们创建一个包含文档的集合 -> db.demo656.insertOne({Name:"John"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea060264deddd72997713cf") } 使用 find() 方法显示集合中的所有文档 -> db.demo656.find(); 这将产生以下输出 -{ "_id" : ObjectId("5ea060264deddd72997713cf"), "Name" : "John" } 这是在 MongoDB 中使用 push 和 slice 的查询 -> db.demo656.update({Name:"John"}, {"$push":{"ListOfName": {"$each": ["John"], "$slice": -9}}}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) 使用 find() 方法显示集合中的所有文档 -> db.demo656.find(); 这将产生以下输出 -{ ... 阅读更多
2K+ 次查看
要清除,请使用 dropDatabase。以下是语法 -use yourDatabaseName; db.dropDatabase(); 要清除 MongoDB 数据库,首先显示所有数据库 -> show dbs 这将产生以下输出 -MyDB 0.000GB admin 0.000GB config 0.000GB local 0.000GB onlinecustomertracker 0.000GB test 0.006GB 现在,让我们删除数据库 onlinecustomertracker -> use onlinecustomertracker switched to db onlinecustomertracker > db.dropDatabase(); { "dropped" : "onlinecustomertracker", "ok" : 1 } 以下是删除上述数据库后显示所有数据库的查询 -> show dbs 这将产生以下输出 -MyDB 0.000GB admin 0.000GB config 0.000GB local 0.000GB test 0.006GB
543 次查看
findOne() 返回满足集合上指定查询条件的一个文档。让我们创建一个包含文档的集合 -> db.demo655.insertOne({subject:"MySQL"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea050254deddd72997713cc") } > db.demo655.insertOne({subject:"MongoDB"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea0502b4deddd72997713cd") } > db.demo655.insertOne({subject:"Java"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea050314deddd72997713ce") } 使用 find() 方法显示集合中的所有文档 -> db.demo655.find(); 这将产生以下输出 -{ "_id" : ObjectId("5ea050254deddd72997713cc"), "subject" : "MySQL" } { "_id" : ObjectId("5ea0502b4deddd72997713cd"), "subject" : "MongoDB" } { "_id" : ObjectId("5ea050314deddd72997713ce"), "subject" : "Java" } 以下是 ... 阅读更多
78 次查看
是的,使用 $in 更快。让我们看一个例子,并创建一个包含文档的集合 -> db.demo653.insertOne({subject:"MySQL"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea04b274deddd72997713c0") } > db.demo653.insertOne({subject:"MongoDB"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea04b304deddd72997713c1") } > db.demo653.insertOne({subject:"Java"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea04b354deddd72997713c2") } > db.demo653.insertOne({subject:"C"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea04b384deddd72997713c3") } > db.demo653.insertOne({subject:"C++"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea04b3b4deddd72997713c4") } 使用 find() 方法显示集合中的所有文档 -> db.demo653.find(); 这将产生以下输出 -{ "_id" : ObjectId("5ea04b274deddd72997713c0"), "subject" : ... 阅读更多
162 次查看
在 MongoDB 聚合中使用 $sort。让我们创建一个包含文档的集合 -> db.demo652.insertOne({ ... value:10, ... "details" : [{ ... "ProductName" : "Product-1", ... "ProductQuantity" : 8, ... "ProductPrice" : 500 ... }, { ... "ProductName" : "Product-2", ... "ProductQuantity" : 7, ... "ProductPrice" : 500 ... ... }] ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e9f0730e3c3cd0dcff36a62") } > > db.demo652.insertOne({ ... value:5, ... ... 阅读更多
385 次查看
为了避免 MongoDB 中的性能问题,请使用索引的概念。让我们创建一个包含文档的集合 -> db.demo531.createIndex({"CountryName":"text", "Name":"text"});{ "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 } > db.demo531.insertOne({CountryName:"US", "Name":"Chris"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b2b60ef4dcbee04fbbbf2") } > db.demo531.insertOne({CountryName:"UK", "Name":"David"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b2b6cef4dcbee04fbbbf3") } > db.demo531.insertOne({CountryName:"AUS", "Name":"chris"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b2b74ef4dcbee04fbbbf4") } > db.demo531.insertOne({CountryName:"US", "Name":"CHRIS"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b2badef4dcbee04fbbbf5") } 使用 find() 方法显示集合中的所有文档 -> db.demo531.find(); 这将 ... 阅读更多
624 次查看
如果也有空值,则使用sort()实现ORDERBY。注意 - 从MongoDB v3.2开始,mongo shell中的$orderby运算符已弃用。请改用cursor.sort()。让我们创建一个包含文档的集合 -> db.demo530.insertOne({"Name":"Chris"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b2990ef4dcbee04fbbbec") } > db.demo530.insertOne({"Name":null});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b2991ef4dcbee04fbbbed") } > db.demo530.insertOne({"Name":"David"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b2992ef4dcbee04fbbbee") } > db.demo530.insertOne({"Name":"Adam"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b2995ef4dcbee04fbbbef") } > db.demo530.insertOne({"Name":null});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b2999ef4dcbee04fbbbf0") } > db.demo530.insertOne({"Name":"Carol"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b299eef4dcbee04fbbbf1") }显示 ... 阅读更多
820 次浏览
要在 MongoDB 中按 _id 分组,请使用 $group。让我们创建一个包含文档的集合 -> db.demo529.insertOne({"Score":10});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b1d5bef4dcbee04fbbbe4") } > db.demo529.insertOne({"Score":20});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b1d5fef4dcbee04fbbbe5") } > db.demo529.insertOne({"Score":10});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b1d61ef4dcbee04fbbbe6") } > db.demo529.insertOne({"Score":10});{ "acknowledged" : true, "insertedId" : ObjectId("5e8b1d62ef4dcbee04fbbbe7") }使用 find() 方法显示集合中的所有文档 -> db.demo529.find();这将产生以下输出 -{ "_id" : ObjectId("5e8b1d5bef4dcbee04fbbbe4"), "Score" : 10 } { "_id" : ObjectId("5e8b1d5fef4dcbee04fbbbe5"), "Score" : 20 } { "_id" : ObjectId("5e8b1d61ef4dcbee04fbbbe6"), "Score" : 10 ... 阅读更多