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
- mongodb常用命令
- mongodb常用命令
- MongoDB常用命令
- MongoDB常用命令
- MongoDB常用命令
- Mongodb常用命令
- mongodb常用命令
- mongodb常用命令
- mongodb常用命令
- mongodb常用命令
- mongodb 常用命令
- mongodb常用命令
- MongoDB 常用命令
- MongoDB 常用命令
- mongodb 常用命令
- mongodb常用命令
- mongodb常用命令
- MongoDB 常用命令
- activity与fragment中使用OnActivityResult方法
- Netty 初步介绍
- Android系统应用开发(八)ANR应用程序与无响应对话框自定义
- 用RNN拟合加法运算
- 从数据库获取数据插入页面
- mongoDB常用命令
- 数据管理工具中的1130错误的解决方法
- 增量式整理计算机视觉的相关代码
- Path sum: four ways
- golang简单获取上传文件大小的实现代码
- 204.Singleton-单例(容易题)
- sizeof(结构体)
- HTTP状态码(StatusCode)
- 三种创建多线程的方式(Thread,Runnalbe,callable)