MongoDb的学习
来源:互联网 发布:去他妈的全世界 知乎 编辑:程序博客网 时间:2024/05/22 14:20
1.MongoDB中bin目录分析核心:mongod: 数据库核心进程mongos: 查询路由器,集群时用mongo: 交互终端(客户端)二进制导出导入:mongodump:导出bson数据mongorestore: 导入bsonbsondump: bson转换为jsonmonoplog:数据导出导入mongoexport: 导出json,csv,tsv格式mongoimport: 导入json,csv,tsv诊断工具:mongostatsmongotopmongosniff 用来检查mongo运行状态mongodb要求磁盘剩余空间>=4G,如果不够,可以用 --smallfiles 选项2.mongo入门命令 (注:table在mongodb里叫collections)use databaseName 选库(如果数据库不存在,则创建数据库,否则切换到指定数据库) db.dropDatabase() 删除当前数据库,默认为 test,你可以使用 db 命令查看当前数据库名show dbs/databases 查看当前的数据库 db 查看当前使用那个数据库show tables/collections 查看当前库下的collectiondb.collection.drop() 删除集合db.collectionName.find() 查看 (对于查看是最难得后面会有介绍)db.collectionName.insert({title:'nice day'}) 增加单篇文档(_id是默认的)db.collectionName.insert({_id:8}) 增加单个文档,并指定_iddb.collectionName.insert([{time:'friday',study:'mongodb'},{_id:9,gender:'male',name:'QQ'}]) 增加多个文档db.collectionName.remove({}) 删除所有数据 db.collectionName.remove(查询表达式, 选项) 查询表达式 想当于条件 选项是指 {true/false},是否只删一行, 默认为false db.collectionName.update(查询表达式,新值,选项) db.news.update({name:'QQ'},{name:'MSN'}) 是指选中news表中,name值为QQ的文档,并把其文档值改为{name:'MSN'}结果: 文档中的其他列也不见了,改后只有_id和name列了即--新文档直接替换了旧文档,而不是修改如果是想修改文档的某列,可以用$set关键字db.collectionName.update(query,{$set:{name:’QQ’}}) 默认修改添加最先添加的数据$set 修改某列的值$unset 删除某个列$rename 重命名某个列$inc 增长某个列$setOnInsert 当upsert为true时,并且发生了insert操作时,可以补充的字段 MongoDB2.4版本之后新增的小试牛刀一下db.sb.insert({name:'man',sex:'n',age:20,by:'lock'}) 添加数据db.sb.find() 简单查询db.sb.find({"a.x":1}) 查询子文档db.sb.find().sort({_id:1}) 1与-1分别代表正序与倒序db.sb.update({name:'man'},{$set:{name:'sex'},$rename:{sex:'n'},$unset:{by:'lock'},$inc:{age:1}}) 修改name 更改sex列的名字 删除by列 age列自增db.sb.find()db.sb.update({x:2},{$set:{x:1}},{multi:true}) 修改x 匹配多行db.sb.find()db.sb.update({x:1},{x:11111},{upsert:true}) 修改x 如果匹配成功就更改 没有了就添加db.sb.find().count() 统计集合中有多少条数据db.sb.find({x:1},{y:1}) 查x列相等的值 查询指定的列db.sb.find({},{x:true,_id:0}) 查询所有文档的x列属性,且不查询_id属性db.sb.find({$and:[{x:1},{y:1}]}) 查询x列的值 and y列的值db.sb.find({x:{$nin:[1,3]}}) 查询x列中不存在的任意一个值的数据db.sb.find({x:{$in:[1,3]}}) 查询x列中任意一个值db.sb.find({$or:[{_id:1},{_id:2}]}) 查询x列中任意一个值db.sb.find({$or:[{$and:[{a:1},{b:1}]},{c:1}]}) and与or的混合搭配用法db.sb.find({$nor:[{x:2},{y:1}]}) 查询x列不为2y列也不1的数据db.sb.find({_id:{$ne:1}}) 查询_id列的值不为1的数据db.sb.find({id:{$all:[1,2]}}) 是指取出 id列是一个数组,且至少包含 1,2值db.sb.find({id:{$exists:true}}) 查询出文档中含有id的列db.sb.find({name:/a.*/}) 用正则表达式查询 db.sb.find({$where:'this.id==1&&this.age==26'}) 这样的查询写起来简单但是效率不高 因为他还有解析json$type的操作符认知Double 1 String 2 Object 3 Array 4 Binary data 5 Undefined 6 已废弃。Object id 7 Boolean 8 Date 9 Null 10 Regular Expression 11 JavaScript 13 Symbol 14 JavaScript (with scope) 15 32-bit integer 16 Timestamp 17 64-bit integer 18 Min key 255 Query with -1.Max key 127 db.sb.find({_id:{$type:1}}) 你想表达的什么类型直接在$type后面跟上相对应的值
0 0
- mongoDB的学习笔记
- Mongodb的学习笔记
- Node-mongoDB的学习
- Mongodb基本的学习
- MongoDB的学习笔记
- mongoDB的进阶学习
- MongoDb的学习
- 关于mongodb的学习
- 对mongodb的学习
- mongodb的学习
- 学习mongodb的笔记
- MongoDB的学习一
- mongoDB的学习
- Mongodb的入门学习
- MongoDB的学习
- mongoDB的学习
- 数据库的学习--MongoDB
- MongoDB的学习(一)-MongoDB的基本概念
- Eclipse RCP Multi-platform builds
- java JDBC 增删改查 总结
- 关于EF上线文异常问题整理
- 使用OPC UA的十个原因
- E:before E:after 插入项目编号
- MongoDb的学习
- oracle 11g Dataguard 之 Remote_Transport_user
- CADisplayLink和NSTimer的区别
- js表单验证
- 如何让Perl脚本同时只运行一个实例
- 商品数量很少 如何打造完美电商网站
- Infragistics组件-UltraGrid对象间关系总结
- Nginx从开发到精通
- mac 搭建hadoop设置JAVA_HOME