一、插入并保存文档
insert方法
1.单数据插入
db.study.insert({ "name":"赵六", "age":20, "sex":0, "address":"北京,海淀" })
2.批量插入
for (var i = 0; i < 5; i++){ db.study.insert({ "name" : "李四1", "age" : 1.0+i, "sex" : 1.0, "address" : "甘肃,武威"+i }) }
二、删除文档
1.remove方法智慧删除
db.study.remove({ "name":"赵六" })
2.drop直接删除集合
三、更新文档
update 有两个参数1是寻找目标,2是将要修改成啥
1.文档替换
var lisi = db.study.findOne({"name":"李四1"}); lisi.info = { "age":lisi.age, "sex":lisi.sex, }; delete lisi.age; delete lisi.sex; db.study.update({"name":"李四1"},lisi)
2.使用修改器
$inc 必须是数字执行1次在pageviews上加1
db.analytics.update({"url":"www.baidu.com"},{"$inc":{"pageviews":1}})
$set 用来指定一个字段,如果这个字段不存在,则创建,有则修改
db.study.update({name:"李四2"},{"$set":{"age":21}})
$unset 删除字段(键值对)
db.study.update({name:"李四2"},{"$unset":{"lovly":"food"}})
$push 有字段则在数组中添加值,没有字段新增 键值对
db.study.update({name:"李四2"},{"$push":{"content":{ "name" : "李四2", "age" : 22.0, "sex" : 1.0, }}})
$each 添加多条数据
db.study.update({name:"李四2"},{"$push":{"content":{"$each":[{ "name" : "李四3", "age" : 21.0, "sex" : 1.0},{ "name" : "李四4", "age" : 23.0, "sex" : 1.0}, { "name" : "李四5", "age" : 26.0, "sex" : 1.0}] }}})
$slice 值必须为负数 和$push组合使用,其负数的值是push数据的最大数
db.blog.update({"title":"test3"}, {"$push":{"top3":{"$each":[ {"name":"zhang","num":1}, {"name":"li","num":2}, {"name":"wang","num":3}, {"name":"liu","num":4}, {"name":"kang","num":5}], "$slice":-3, "$sort":{"num":-1 }}}})
结果:
{
"_id" : ObjectId("5f1fba699da18cf3e2cf8073"),
"title" : "test3",
"content" : "There is study",
"date" : ISODate("2020-07-28T05:40:57.366Z"),
"study" : [
"english",
"chinese"
],
"top3" : [
{
"name" : "wang",
"num" : 3.0
},
{
"name" : "li",
"num" : 2.0
},
{
"name" : "zhang",
"num" : 1.0
}
]
}