浅谈MongoDB中的寻常操作,你都了解多少?
发布时间:2022-04-26 09:40:06 所属栏目:系统 来源:互联网
导读:这篇文章给大家分享的是有关MongoDB中的常用操作的内容,小编觉得挺实用的,因此分享给大家做个参考。下文整理了很多MongoDB操作技巧,感兴趣的朋友接下来一起跟随小编看看吧。 1、shell登陆和显示 假设在本机上有一个端口为17380的MongoDB服务,假设已经把m
这篇文章给大家分享的是有关MongoDB中的常用操作的内容,小编觉得挺实用的,因此分享给大家做个参考。下文整理了很多MongoDB操作技巧,感兴趣的朋友接下来一起跟随小编看看吧。 1、shell登陆和显示 假设在本机上有一个端口为17380的MongoDB服务,假设已经把mongo bin文件加入到系统PATH下。 登陆:mongo --port 17380 显示DB:show dbs 进入某DB:use test_cswuyg 显示集合:show tables 2、简单查找 查找文档:db.test_mac_id.find({'a': 'b'}) 删除文档:db.test_mac_id.remove({'a': 'b'}) 查找找到某一天的数据: db.a.find({'D' : ISODate('2014-04-21T00:00:00Z')}) 或者 db.a.find({'D' : ISODate('2014-04-21')}) 删除某一天的数据: db.region_mac_id_result.remove({"D" : ISODate('2014-04-17')}) 小于2014.6.5的数据: db.xxx.find({E: {$lt :ISODate('2014-06-05')}}) 大于等于2014.6.1的数据: db.xxx.find({E: {$gte: ISODate("2014-05-29")}}).count() 两个条件: db.xxx.find({E:{$gte: ISODate("2014-05-29"), $lte: ISODate("2014-06-04")}}).count() json中的嵌套对象查询,采用“点”的方式: mongos> db.wyg.find({"a.b": {$exists: true}}) { "_id" : "c", "a" : { "b" : 10 } } 某个字段存在,且小于1000有多少: db.stat.find({_: ISODate("2014-06-17"), "123": {$exists: 1, $lte: 1000}}, {"123": 1}).count() 3、存在和遍历统计 存在'i': 1,且存在old_id字段: mongos> var it = db.test.find({'i': 1, "old_id": {$exists: 1}}) 遍历计数1:mongos> var count = 0;while(it.hasNext()){if (it.next()["X"].length==32)++count}print(count) 遍历计数2:mongos> var count = 0;while(it.hasNext()){var item = it.next(); if (item['X'].length==32 && item['_id'] != item['X'])++count;if(!item['X'])++count;}print(count) 4、插入和更新 > db.test.findOne({_id: 'cswuyg'}) 5、repair 操作 对某个DB执行repair:进入要repair的db,执行db.repairDatabase() 对mongodb整个实例执行repair:numactl --interleave=all /mongod --repair --dbpath=/home/disk1/mongodata/shard/ 6、mongodb任务操作 停止某个操作: [xxx]$ mongo --port 17380 MongoDB shell version: 2.4.5 connecting to: 127.0.0.1:17380/test mongos> db.currentOp() { "inprog" : [ ...] } (编辑:济南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |