找到 6705 篇文章 适用于 数据库
2K+ 阅读量
要在文档中获取两个数组中的唯一值,请在聚合中使用 $setUnion。$setUnion 获取两个或多个数组,并返回一个包含出现在任何输入数组中的元素的数组。让我们创建一个包含文档的集合 ->db.demo608.insertOne({"ListOfName1":["John", "Chris", "Bob", "David"], "ListOfName2":["Bob", "Sam", "John", "Robert", "Chris"]} ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e974542f57d0dc0b182d62b") }使用 find() 方法显示集合中的所有文档 -> db.demo608.find().pretty();这将产生以下输出 -{ "_id" : ObjectId("5e974542f57d0dc0b182d62b"), "ListOfName1" : [ "John", "Chris", ... 阅读更多
301 阅读量
对于 MongoDB 中的平均值,请使用 $avg。让我们创建一个包含文档的集合。这里,我们有重复的 ID,每个 ID 都有评分 -> db.demo606.insertOne({id:1, rating:5});{ "acknowledged" : true, "insertedId" : ObjectId("5e972dfbf57d0dc0b182d623") } > db.demo606.insertOne({id:1, rating:4});{ "acknowledged" : true, "insertedId" : ObjectId("5e972dfef57d0dc0b182d624") } > db.demo606.insertOne({id:2, rating:3});{ "acknowledged" : true, "insertedId" : ObjectId("5e972e09f57d0dc0b182d625") } > db.demo606.insertOne({id:1, rating:null});{ "acknowledged" : true, "insertedId" : ObjectId("5e972e0ef57d0dc0b182d626") } > db.demo606.insertOne({id:2, rating:null});{ "acknowledged" : true, "insertedId" : ObjectId("5e972e15f57d0dc0b182d627") } > db.demo606.insertOne({id:2, rating:3});{ "acknowledged" : true, "insertedId" : ObjectId("5e972e1bf57d0dc0b182d628") }使用 find() 方法显示集合中的所有文档 ... 阅读更多
3K+ 阅读量
为此,请设置“unique:true”,即唯一约束,并避免插入重复项,如下面的语法所示 -db.yourCollectionName.ensureIndex({yourFieldName: 1}, {unique: true, dropDups: true})为了理解上述语法,让我们创建一个包含文档的集合。这里,不允许插入重复项 -> db.demo604.ensureIndex({FirstName: 1}, {unique: true, dropDups: true});{ "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 } > db.demo604.insertOne({FirstName:"Chris"});{ "acknowledged" : true, "insertedId" : ObjectId("5e960887ed011c280a0905d8") } > db.demo604.insertOne({FirstName:"Bob"});{ "acknowledged" : true, "insertedId" : ObjectId("5e96088aed011c280a0905d9") } > db.demo604.insertOne({FirstName:"David"});{ "acknowledged" : true, "insertedId" : ObjectId("5e96088ded011c280a0905da") } > db.demo604.insertOne({FirstName:"Chris"}); 2020-04-15T00:31:35.978+0530 ... 阅读更多
233 阅读量
NumberLong(x) 超过其限制值并四舍五入值,而 NumberLong(“x”) 则不会。现在,我们将考虑一个数字,并将其用于 NumberLong(x) 和 NumberLong(“x”) 以查看差异。让我们创建一个包含文档的集合 -> db.demo603.insert({"longValue" : NumberLong(988998985857575789)}); WriteResult({ "nInserted" : 1 }) > db.demo603.insert({"longValueInString" : NumberLong("988998985857575789")});使用 find() 方法显示集合中的所有文档 -> db.demo603.find().pretty();这将产生以下输出 -{ "_id" : ObjectId("5e9605e5ed011c280a0905d1"), "longValue" : NumberLong("988998985857575808") } { "_id" : ObjectId("5e9605faed011c280a0905d2"), "longValueInString" : NumberLong("988998985857575789") }
617 阅读量
对于此类文档分组,请在 MongoDB 聚合中使用 $group。让我们创建一个包含文档的集合 -> db.demo602.insertOne({id:1, Name:"Chris"});{ "acknowledged" : true, "insertedId" : ObjectId("5e960080ed011c280a0905c9") } > db.demo602.insertOne({id:2, Name:"David"});{ "acknowledged" : true, "insertedId" : ObjectId("5e960086ed011c280a0905ca") } > db.demo602.insertOne({id:1, Name:"Bob"});{ "acknowledged" : true, "insertedId" : ObjectId("5e96008ced011c280a0905cb") } > db.demo602.insertOne({id:3, Name:"Mike"});{ "acknowledged" : true, "insertedId" : ObjectId("5e960092ed011c280a0905cc") } > db.demo602.insertOne({id:2, Name:"John"});{ "acknowledged" : true, "insertedId" : ObjectId("5e960099ed011c280a0905cd") } > db.demo602.insertOne({id:1, Name:"Sam"});{ "acknowledged" : true, "insertedId" : ObjectId("5e9600a1ed011c280a0905ce") }使用 find() 方法显示集合中的所有文档 -> db.demo602.find();这将产生以下 ... 阅读更多
520 阅读量
让我们创建一个包含文档的集合 -> db.demo601.insertOne( ... { ... id:1, ... userDetails: ... { ... userName:"John", ... userMailId:"[email protected]" ... } ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e95ff5ced011c280a0905c7") } > > db.demo601.insertOne( { id:2, userDetails: { userName:"Carol", userMailId:"[email protected]" } } );{ "acknowledged" : true, "insertedId" : ObjectId("5e95ff71ed011c280a0905c8") }使用 find() 方法显示集合中的所有文档 ... 阅读更多
444 阅读量
为此,请使用 userAdminAnyDatabase,因为它提供了与 admin 相同的所有权限。以下是语法:- 使用 admin 数据库。createUser( { user: "你的用户名", pwd: "你的密码", roles: [ { role: "你的角色名", db: "你的数据库名" } ] } )让我们使用上述语法来创建一个用户角色。以下是用 “userAdminAnyDatabase” 角色创建用户的查询:-> 使用 admin 切换到数据库 admin > db.createUser( ... { ... user: "David Miller", ... pwd: "123456", ... roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] ... } ... )这将产生以下输出:成功添加用户:{ "user" : "David Miller", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] }
424 次查看
要更新,请使用 update(),以下是创建和使用示例自定义变量的语法:var anyVariableName=你的值; db.你的集合名.update({过滤器}, {$set:{你的字段名:yourVariableName}});让我们创建一个包含文档的集合:-> db.demo600.insertOne({id:1, Name:"Robert"});{ "acknowledged" : true, "insertedId" : ObjectId("5e94a063f5f1e70e134e2699") } > db.demo600.insertOne({id:2, Name:"Mike"});{ "acknowledged" : true, "insertedId" : ObjectId("5e94a06bf5f1e70e134e269a") } > db.demo600.insertOne({id:3, Name:"Sam"});{ "acknowledged" : true, "insertedId" : ObjectId("5e94a072f5f1e70e134e269b") }使用 find() 方法显示集合中的所有文档:-> db.demo600.find();这将产生以下输出:{ "_id" : ObjectId("5e94a063f5f1e70e134e2699"), "id" : 1, "Name" : "Robert" } { "_id" : ObjectId("5e94a06bf5f1e70e134e269a"), "id" : 2, "Name" : "Mike" } ... 阅读更多