乐趣区

MongoDB学习记录

MongoDB 是分布式数据库。
和 mysql 概念区别:

基本操作:
(1)显示数据库:

show dbs

(2) 连接数据库:

use local

(3)显示当前数据库

db

(4)创建数据库(当没有该数据库名时,自动创建)

use stray

(5)插入数据

db.stray.insert({"name": "stray"})

(6) 删除数据库

use stray
db.dropDatabase()

(7) 创建集合

db.createCollection("stu")
创建固定集合 mycol,整个集合空间大小 6142800 KB, 文档最大个数为 10000 个。db.createCollection("mycol", { capped : true, autoIndexId : true, size : 

6142800, max : 10000 } )

(8)查看集合

show collections

(9)删除集合

db.stu.drop()

(10)插入文档

db.COLLECTION_NAME.insert(document)
db.stu.insert({title: 'lala', 
name: 'zhangsan',
})

(11)更新文档

db.collection.update(
   <query>,
   <update>,
   {
     upsert: <boolean>,
     multi: <boolean>,
     writeConcern: <document>
   }
)
db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}},{multi:true})

(12)删除文档

db.collection.remove(
   <query>,
   {
     justOne: <boolean>,
     writeConcern: <document>
   }
)

(13)查询文档

db.collection.find(query, projection)
OR 条件
db.col.find({$or:[{"by":"菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty()
db.col.find({"likes": {$gt:50}, $or: [{"by": "菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty()

(14)条件操作符

(>) 大于 - $gt
(<) 小于 - $lt
(>=) 大于等于 - $gte
(<=) 小于等于 - $lte

(15)limit 和 skip

 db.COLLECTION_NAME.find().limit(NUMBER)
 db.col.find({},{"title":1,_id:0}).limit(2)
 使用 limit()方法来读取指定数量的数据外,还可以使用 skip()方法来跳过指定数量的数据,skip 方法同样接受一个数字参数作为跳过的记录条数。以下实例只会显示第二条文档数据
 db.col.find({},{"title":1,_id:0}).limit(1).skip(1)

(16)排序
在 MongoDB 中使用 sort() 方法对数据进行排序,sort() 方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而 -1 是用于降序排列。

db.COLLECTION_NAME.find().sort({KEY:1})

(17)索引

db.collection.createIndex(keys, options)
db.col.createIndex({"title":1,"description":-1})
1 为指定按升序创建索引,如果你想按降序来创建索引指定为 -1 即可


退出移动版