MongoDB更新/删除/索引

database

  • query : update的查询条件,类似sql update查询内where后面的。
  • update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
  • upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
  • multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
  • writeConcern :可选,抛出异常的级别。

更新一个字段

db.col.insert({

title: "MongoDB 教程",

description: "MongoDB 是一个 Nosql 数据库",

by: "菜鸟教程",

url: "http://www.runoob.com",

tags: ["mongodb", "database", "NoSQL"],

likes: 100

})

将标题为MongoDB 教程的文档更换为标题MongoDB,只更新符合条件的第一个

db.col.update({"title":"MongoDB 教程"},{$set:{"title":"MongoDB"}})

将标题为MongoDB 教程的文档更换为标题MongoDB,更新所有符合条件的

db.col.update({"title":"MongoDB 教程"},{$set:{"title":"MongoDB"}},{multi:true})

更新多个字段

db.col.save({

"_id" : ObjectId("5cb5ac6e74b0bb0c47ed9069"),

"title" : "MongoDB2",

"description" : "MongoDB2 是一个 Nosql 数据库",

"by" : "Runoob2",

"url" : "http://www.runoob.com2",

"tags" : [

"mongodb"

],

"likes" : 90

})

二、删除

# 符合条件的,删除一个

db.runoob.deleteOne({"by":"菜鸟教程"})

# 符合条件的,全部删除

db.runoob.deleteMany({"by":"菜鸟教程"})

# 清空集合

db.runoob.deleteMany({})

三、索引

# 单个索引,1为升序索引,-1为降序索引

db.col.createIndex({"title":1})

# 复合索引

db.col.createIndex({"title":1,"description":-1})

#查看集合索引

db.col.getIndexes()

#查看集合索引大小

db.col.totalIndexSize()

#删除集合所有索引

db.col.dropIndexes()

#删除集合指定索引

db.col.dropIndex("索引名称")

以上是 MongoDB更新/删除/索引 的全部内容, 来源链接: utcz.com/z/533033.html

回到顶部