MongoDB 的一些基础命令
扫码查看 原文链接 : https://blog.lmlphp.com/tutorial/4/mongodb/item/2/MongoDB_some_basic_commands 来自 : LMLPHP后院![]()
创建数据库:
0> use db_name
查看当前数据库:
0> db
查看数据库状态:
0> db.stats()
查看所有的数据库列表:
0> show dbs
删除数据库:
0> db.dropDatabase()
创建集合,options 可选:
0> db.createCollection('collection_name', {options:''})
查看集合:
0> show collections
删除集合:
0> db.collection_name.drop()
插入文档:
0> db.collection_name.insert({document_key:value})
查看文档:
0> db.collection_name.find()
结构化显示文档,使用 pretty() 方法:
0> db.collection_name.find().pretty()
只查看一个文档,使用 findOne() 方法返回一个文档:
0> db.collection_name.findOne()
条件查询(相等):
0> db.collection_name.find({"name":"lmlphp"})
条件查询(小于)
0> db.collection_name.find({"amount":{$lt:100}})
同理:
- 小于等于 $lte
- 大于 $gt
- 大于等于 $gte
- 不等于 $ne
查询指定字段,显示 name 字段,不显示 _id 字段,如下示例:
0> db.collection_name.find({},{name:1,_id:0})
逻辑与运算,AND 查询:
0> db.collection_name.find({"name":"lmljs","author":"may"})
逻辑或运算,OR 查询:
01234> db.collection_name.find({ $or:[ {name:lmljs},{name:lblog} ]})
更新文档,使用 update 方法:
0> db.collection_name.update({"name":"lmlphp"},{$set:{"name":"lmljs"}})
更新多个文档:
0> db.collection_name.update({...},{$set:{...}},{multi:true})
save() 方法示例:
012> db.collection_name.save({ "_id":ObjectId(....), "key":"value"})
删除文档:
0> db.collection_name.remove({"key":"value"})
删除一个:
0> db.collection_name.remove({"key":"value", 1})
删除所有:
0> db.collection_name.remove()
skip() 和 limit() 的使用:
0> db.collection_name.find().limit(1).skip(2)
sort() 排序:
0> db.collection_name.find().sort({score:1})
ensureIndex() 建索引:
0> db.collection_name.ensureIndex({"name":1})
aggregate() 聚合,如下示例相当于 group by name 字段,且计算数量:
012> db.collection_name.aggregate( [{$group:{_id:"$name",count:{$sum:1}}}])
aggregate() 聚合,条件过滤 $match 使用:
012db.collection_name.aggregate( [{$match:{uid:98307}},{$group:{_id:"$name",count:{$sum:1}}}]);
创建超级用户:
01use admin;db.createUser({user:"super",pwd:"lmlphp",roles:["root","userAdminAnyDatabase"]});
安全模式运行 :
012345$ ./mongod --fork --config mongod.confmongod.confsecurity: authorization: enabled