mongodb 常用操作

show 数据库

show dbs

show 表

show collections

查询

db.questionHint.find()
db.modelTemplate.find({"type":{"$gte":5}})

更新

db.collection.update(criteria,objNew,upsert,multi)
参数说明:
criteria:查询条件
objNew:update对象和一些更新操作符
upsert:如果不存在update的记录,是否插入objNew这个新的文档,true为插入,默认为false,不插入。
multi:默认是false,只更新找到的第一条记录。如果为true,把按条件查询出来的记录全部更新。

单个更新

db.questionHint.update({"_id":ObjectId("5b0fb4a7d7af5a0f9604b237")},{$set:{"isUse":true}})
db.questionHint.update({"_id":ObjectId("5b0bfe6a19f6ad05de286896")},{$set:{"isUse":false}})

批量更新
db.getCollection('userSkin').find({"sort":{$exists:true}}).forEach(
   function(item){
        db.getCollection('userSkin').update({"_id":item._id},{$set:{"sort":''}})
   }
)
删除字段

//例如要把User表中address字段删除
db.User.update({},{$unset:{'address':''}},false, true)

模糊查询

db.getCollection('questionHint').find({"message":{"$regex":".*你第二.*"}})

删除数据

db.questionHint.remove()

删除表

db.questionHint.drop()

创建表

db.createCollection('questionHint',{safe:true},function(err,collection){
    if(err){
        console.log(err);
    }
})

批量插入

db.questionHint.insertMany([{},{}])

查询字段不存在的记录

db.getCollection('BasicInfo').find({knowledge:{$exists:false}})

执行js语句

mongo --nodb initMongo.js

数据备份

数据导出

./mongoexport -h IP --port port -u userName -p passWord -d dbName -c collectionName -o outFilePath
参考:
https://www.cnblogs.com/qingtianyu2015/p/5968400.html
http://www.mamicode.com/info-detail-1394003.html

猜你喜欢

转载自blog.csdn.net/xu622/article/details/81258782