操作MongoDB

  1. 启动命令:

Mac的OS操作系统

mongod --config /usr/local/etc/mongod.conf
  1. 连接mongo:
mongo
  1. 创建数据库
> user blog
switched to db blog
> db
blog
  1. 查看所有数据库
> show dbs
local 0.000GB
test 0.000GB
  1. 刚刚创建的数据库blog不在数据库的列表中,要显示它,需要向blog数据库插入一些数据
> db.users.insert({"name": "zhangsan"})
WriteResult({"nInserted": 1})
> show dbs
local 0.000GB
test 0.000GB
blog 0.000GB
  1. 删除数据库
// 切换到要删除的数据库
> use blog
switched to db blog
> db.dropDatabase()
{ "dropped": "blog", "ok": 1}

// 删除集合
> db.collection.drop()
  1. 更新
db.users.update({"name": "zhangsan"}, {$set:{"name": "lisi"}}, {multi: true})
// multi为true时,把按条件查出来多条记录全部更新,默认为false
  1. 删除
> db.users.remove({"name": "lisi"})
WriteResult({ "nRemoved": 1 })
// 删除所有数据
> db.users.remove({})
  1. 操作符
db.users.find({"likes":{$lt: 50}})
(>)大于 - &gt
(<)小于 - &lt
(>=)大于等于 - &gte
(<=)小于等于 - &lte
(!=)不等于 - &ne
  1. limit()指定读取的数量,skip()指定跳过的数量
> db.col.insert({"title": "PHP教程"})
> db.col.insert({"title": "JAVA教程"})
> db.col.insert({"title": "MongoDB教程"})

> db.col.find({}, {_id:0}).limit(2)
{ "title" : "PHP教程" }
{ "title" : "JAVA教程" }

> db.col.find({}, {_id:0}).limit(1).skip(1)
{ "title" : "JAVA教程" }
  1. 排序sort(): 1为升序,-1为降序

skip(), limilt(), sort()三个放在一起执行的时候,执行的顺序是先 sort(), 然后是 skip(),最后是显示的 limit()。

{ "title" : "PHP教程", "likes" : 120 }
{ "title" : "JAVA教程", "likes" : 110 }
{ "title" : "MongoDB教程", "likes" : 100 }

> db.col.find().sort({"likes": -1})
{ "_id" : ObjectId("5a2673c0cab6806f65ada2af"), "title" : "MongoDB教程", "likes" : 120 }
{ "_id" : ObjectId("5a2673bacab6806f65ada2ae"), "title" : "JAVA教程", "likes" : 110 }
{ "_id" : ObjectId("5a2673b5cab6806f65ada2ad"), "title" : "PHP教程", "likes" : 100 }
点赞