mongoDB常用命令

来源:互联网 发布:mysql后加自动增长id 编辑:程序博客网 时间:2024/06/05 20:58
db.person.find()db.person.remove()db.person.drop()//速度更快但不能指定限制条件//定义方法function f(n){  if(n<=2){    return 1  }else{    return f(n-2) + f(n-1)  }}f(4)//替换操作"wangzs , hello word!".replace("word","xxxxx");person={"name":"wangzs2","age":27,"address":"xujingdong","date":new Date()};db.person.insert(person);db.person.findOne()//更新db.person.update({"name":"wangzs2"},{"$set":{"comments":[]}})//插入的数据类型db.person.insert({"a":"","b":null,"c":2,"d":3.12,"e":true,"f":NumberInt(8),"g":NumberLong(9),                    "h":"hello","i":new Date(),"j":["1","2","3"],"k":{"name":"wangzs","age":"27"}})//帮助命令db.help()db.person.help()sh.help()show dbsshow collectionsshow users//查看函数实现代码,参数顺序db.person.update//批量插入db.person.insertMany([{"name":"name1"},{"name":"name2"},{"name":"xxxx"}])//无法执行db.person.insert({"name":"name1","age":25,"address":"上海"})//把age的值加1db.person.update({"name":"name1"},{"$inc":{"age":1}})//更新db.person.update({"name":"name1"},{"$set":{"books":"java"}})db.person.update({"name":"name1"},{"$set":{"books":["mongodb","javascript","hello"]}})//删除不要字段db.person.update({"name":"name1"},{"$unset":{"books":1}})//comments添加内容db.person.update({"name":"wangzs"},{"$push":{"comments":{"星级":"*****","评论":"五星好评"}}})db.person.update({"name":"name1"},{"$push":{"address":{"$each":[23,"88","youxiu"]}}})//$addToSet避免插入重复地址db.person.update({"name":"name1"},{"$addToSet":{"address":{"$each":[23,"youxiu","charu","hello"]}}})db.person.insert({"todo":["A","B","C","A","A"]})//删除数组中所有匹配的结果db.person.update({},{"$pull":{"todo":"A"}})//第三个参数ture,存在更新,如果不存在就创建db.person.update({"name":"wangzs5"},{"$inc":{"age":3}},true)//第4个参数true更新所有匹配的文档db.person.update({"name":"wangzs"},{"$set":{"gift":"happy bitthday"}},false,true)var person=db.person.find({"name" : "wangzs"})person.name="wangss"//包含_id更新,不包含_id保存db.person.save(person)//运行有问题//查找并且更新 只是1个db.runCommand({"findAndModify":"person",    "query":{"name":"wangzs"},    "update":{"$set":{"address":"zhoukou"}}   }).value//查找并且删除 只是1个db.runCommand({"findAndModify":"person",    "query":{"name":"wangzs"},    "remove":true    }).value//指定_id不显示,只显示name,addressdb.person.find({},{"_id":0,"name":1,"address":1})// 18<=age<=30db.person.find({"age":{"$gte":18,"$lte":30}})// name!=wangzs2db.person.find({"name":{"$ne":"wangzs2"}})// name in ("wangzs","wangzs3",123)db.person.find({"name":{"$in":["wangzs","wangzs3",123]}})// name not in ("wangzs","wangzs3",123)db.person.find({"name":{"$nin":["wangzs","wangzs3",123]}})// ordb.person.find({"$or":[{"age":30},{"name":{"$nin":["wangzs","wangzs3",123]}}]})//返回parents=null和不包括返回parents字段的所有结果db.person.find({"parents":null})//返回包括parents字段但是该字段是null的结果 $exists:判断键值存在db.person.find({"parents":{"$in":[null],"$exists":true}})//正则表达式 模糊匹配*wangzs*db.person.find({"name":/wangzs/})db.person.insert({"name":["A","B","C"]})db.person.insert({"name":["E","K","C"]})db.person.insert({"name":["U","D","C","D","W"]})//name数组包含A和Cdb.person.find({"name":{"$all":["A","C"]}})//name数组长度为3的结果db.person.find({"name":{"$size":3}})//name数组前2个位置db.person.find({},{"name":{"$slice":2}})//name数组后2个位置db.person.find({},{"name":{"$slice":-2}})//name数组后3-5位置db.person.find({},{"name":{"$slice":[3,5]}})db.person.insert({"name":"wangzs","address":[{"city":"shanghai","tel":"135"},{"city":"henan","tel":"888"}]})//显示两条结果db.person.find({"address.city":"shanghai","address.tel":"888"})//elemMatch将限定条件进行分组db.person.find({"address":{"$elemMatch":{"city":"shanghai","tel":"888"}}})//遍历结果var cursor=db.person.find()while(cursor.hasNext){    obj = cursor.next()    print(obj)}var cursor=db.person.find()cursor.forEach(function(x){ print(x.A+" - " +x.C)})//限制返回2条结果db.person.find().limit(2)//跳过前2条结果db.person.find().skip(2)//排序 1:升序 2:降序db.person.find().sort({"A":1,"C":-1})//查看所有数据库命令db.listCommands()//explain 显示执行查询过程中做的事情db.person.find({"name":"name221"}).explain()db.person.find({"name":"name221"}).limit(1).explain()//name建立索引db.person.ensureIndex({"name":1})//name,age建立索引db.person.ensureIndex({"name":1,"age":1})//建立唯一索引db.person.ensureIndex({"name":1},{"unique":true})//删除索引db.person.dropIndex({"name":1})db.person.getIndexes() //无法执行//查看索引创建的进度db.currentOp()//穿件唯一索引,重复的删除db.person.ensureIndex({"name":1},{"unique":true,"dropDups":true}) //无法执行//聚合函数db.person.aggregate(    {"$match":{"name":"name5"}},// 对文档集合进行筛选    {"$project":{"name":1}}, // 选择需要投射的字段    {"$group":{"_id":"$name","count":{"$sum":1}}},    {"$sort":{"count":-1}},    {"$limit":5})//按照多个字段分组db.person.aggregate(    {"$group":{"_id":{"name":"$name","age":"$age"},"count":{"$sum":1}}},    {"$sort":{"count":-1}})//分组后找到最大值最小值db.person.aggregate(    {"$group":{"_id":"$name","lowage":{"$min":"$age"},"highage":{"$max":"$age"}}}    )//把id重命名为userid,不显示_id,显示namedb.person.aggregate(    {"$project":{"userid":"$_id","_id":0,"name":1}})db.person.insert({"name":"wangzs1","num1":12,"num2":5})db.person.insert({"name":"wangzs2","num1":8,"num2":9})//把num1和num2的值相加db.person.aggregate(    {"$project":            {"result":              {"$add":["$num1","$num2"]}            }    })db.person.insert({"name":"wangzs2","hireDate":new Date()})db.person.insert({"name":"wangzs2","hireDate":new Date("2016/08/07")})db.person.insert({"name":"wangzs2","hireDate":new Date("2016/05/07")})//返回每个雇员入职的月份db.person.aggregate({"$project":{"hiredIn":{"$month":"$hireDate"}}})//返回员工在公司工作的月数db.person.aggregate({"$project":{"workTime":    {"$subtract":[{"$month":new Date()},{"$month":"$hireDate"}]}}})db.person.insert({"name":"wangzs2","address":"henan"})//取name前两位拼接邮箱号db.person.aggregate({    "$project":    {"email":        {"$concat":[{"$substr":["$name",0,2]},".","$address",".","dongh.com"]}    }})db.person.count({"name":"wangzs2"})//person集合中name的不同数量db.person.runCommand({"distinct":"person","key":"name"})

1 0
原创粉丝点击