微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

mongo 语句积累

db.collection.stat() ---查看表结果

db.collection.find({ipad:/^10.42/{)).pretty() ---查看IPAD以10.42开头的IPAD字段(结尾10.42$)

db.collection.find({ipad:/^10.42/},{vipad:1.ipad:1,id:0}) ---第一个{条件},非id字段:1(显示),_id:0(不显示

db.collection.find().limit(n) --限制输出几行记录

db.collection.find({"aa":{"$nin":[PDB,CDB]}}) ---查询相关字段not in的条件

db.collection.find({aa.sid:"cdb01"}) ---aa字段是一个[小文档集合 ]----[sid:"cdb01",hostname:""....]

db.collection.remove({ipad:/^10.42/}) ---删除特定条件记录,不加条件则删除全部

db.collection.drop() ---删除整个文档集合

db.vipad.renameCollection(vipad1) ---- 表名由VIPAD变成VIPAD1

db.collection.update({ipad:/^10.42/},{$set:{isUser:"true"}},{multi:true}) ---依据条件,更新字段isuser的值,multi:true代表符合条件所有记录都更新,认不带此参数值更新第一条

db.getCollection('vipad').update({},{$rename:{"dg01":"dg02"}},{multi:true})

---multi:true全表增加字段,当然也可以写成,false,true

db.vipad.update({},{$set:{aa:""}},false,true) ---增加了字段aa,认为空,相反删除字段用$unset
db.aaa.distinct("nmid",{"class":3}) --去重
DBQuery.shellBatchSize = 100; ---type it for more设置

批量更新:version:"8.7-abc"----更新为version:"8.7"

var collection = 'test';//集合名
var cnt=0;
db[collection].find().forEach(function(doc){
db[collection].update({_id:doc._id},
{$set:{version:doc.version.replace(/-abc$/,'')}},false,true);
cnt=cnt+1;
});
print (cnt);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐