主要参考
容器创建
docker run -itd --name mongo -p 27017:27017 mongo
客户端
客户端使用
插入文档
db.COLLECTION_NAME.insert(document) COLLECTION即为表,插入数据会自动建表
db.student.insert({"name":"potter"});
更新文档
db.collection.update( <query>, <update>, { upsert: <boolean>, multi: <boolean>, writeConcern: <document> } )
db.student.update(
{"_id":ObjectId("620b45a2f1aea859600015da")},
{"name":"potter","age":18},
{"upsert":true}
)
参数说明:
query : update的查询条件,类似sql update查询内where后面的。
update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern :可选,抛出异常的级别。
删除文档
db.collection.remove( <query>, <justOne> )
db.student.remove(
{"name":"potter"},
{"justOne":true}
)
查询文档
db.collection.find(query, projection)
条件 or
db.student.find({$or:[{"name":"tim"},{"name":"potter"}]}).pretty()
条件 and
db.student.find({$or:[{"name":"tim"},{"age":18}]}).pretty()
分页limit skip
db.COLLECTION_NAME.find().limit(NUMBER)
db.student.find().limit(2).skip(0);
排序
db.COLLECTION_NAME.find().sort({KEY:1})
db.student.find().sort({"age":1}).limit(2).skip(0);