向集合添加文档
语法:
db.集合名称.insert({})
或
db.集合名称.save({})
save于insert不同之处为:
- 使用insert如果插入的文档中_id已经存在,则不能插入
- save方法如果插入的文档中_id已经存在,则执行更新。
示例:
删除集合中的文档
语法: db.collection.remove(查询表达式, 选项);
不加删除条件为删除集合中的所有文档,例如,db.hc.remove()为删除hc集合中的所有文档,db.hc.remove({name: “lisi”})为删除hc集合中name为lisi的文档
选项是指 {justOne:true/false},是否只删一行, 默认为false
示例:
修改操作
基本
db.collection.update(criteria,objNew,upsert,multi)
参数说明:
- criteria:用于设置查询条件
- objNew:用于设置更新内容
- upsert:如果记录已经存在,更新它,否则新增一个记录,取值为0(不做任何操作)或1(新增一条)
- multi:如果有多个符合条件的记录,是否全部更新,取值为0(只会更新第一个符合条件的记录)或1(会修改所有满足条件的记录)
注意:一般情况下后两个参数分别为0,1 ,即:db.collection.update(criteria,objNew,0,1)
示例:
注意:新文档直接替换了旧文档,而不是修改
示例:
示例:
$set
用来指定一个键的值,如果这个键不存在,则创建它。
示例:用$set关键字修改文档的某列
upsert
upsert—是指没有匹配的行,则直接插入该行。
示例:
multi
multi: 是指修改多行(即使查询表达式匹配了多行,默认也只改1行,如果想改多行,可以用此选项)
示例:
$unset
用来删除某个键
示例:
$inc
用来将某个键值加减指定的数值
示例: