mongoDB操作指令

1. 如何启动服务?

Net start mongoDB

2. 添加数据

Db.collection_name insert(document)

Document为json字符串

Esc: document =

({

title: 'MongoDB 教程',

description: 'MongoDB 是一个 Nosql 数据库',

by: '菜鸟教程',

url: 'http://www.runoob.com',

tags: ['mongodb', 'database', 'NoSQL'],

likes: 100

})

collection_在那么系统会自动创建。

3.2 版本后还有以下几种语法可用于插入文档:

向指定集合中插入一条文档数据

向指定集合中插入多条文档数据

 

3. 查询数据

1.Db.collection_name.find(query, projection)

Query 使用查询操作符指定查询条件

Projection 可选,使用投影操作符制定的返回键,查询时返回文档中所有键值,(可忽略 该参数)即可。如果你需要以易读的方式来读取数据,可以使用pretty()方法,语法格式

2.Db.col.find().pretty()

Pretty()方法以格式化的方式显示所有文档

3.db.col.find({“by”:”菜鸟教程”}).pretty()   where by = ‘菜鸟教程’  ‘等于’

4.db.col.find({“likes”:{$lt:50}}).prettty()   where likes < 50

5.db.col.find({“likes”:{$lte:50}}).pretty() where likes<=50

6.db.col.find({“likes”: {$gt:50}}).pretty() where likes>50

7.db.col.find({“likes”:{$gte:50}}).pretty() where likes>=50

8.db.col.find({“likes”:{$ne:50}}).pretty()    where likes !=

9.mongo 查询and

Db.col.find({“likes”:100,”by”:”菜鸟教程”}).pretty() where likes=100 and by =’菜鸟教程’
10.mongo 查询or

Db.col.find({

$or :[

{key1:value1},{key2:value2}

]

})

 

 

11. and 与 or 联合使用

以下实例演示了为: 'where likes>50 AND (by = '菜鸟教程' OR title = 'MongoDB 教程')'

Db.col.find({“likes”:{$rt:50}, $or:[

{“by”:”菜鸟教程”},{“title”:”MongoDB”}

]}).pretty()

db.collection.find(query, {title: 1, by: 1}) // inclusion模式 指定返回的键,不返回其他键

db.collection.find(query, {title: 0, by: 0}) // exclusion模式 指定不返回的键,返回其他键

4. 更改数据(mongodb更新数据)

1. Update()

2. Save()

1.Updat() 用于更新已经存在数据

db.collection.update(

   <query>,

   <update>,

   {

     upsert: <boolean>,

     multi: <boolean>,

     writeConcern: <document>

   })

Query: update 的查询条件

Update :update 为要更改的数据

Upset:默认fasle 不存在记录不插入。True 不存在插入数据

Multu: 默认false更新第一条数据 true 更新全部数据

Db.col.update({“likes:100”},{$set:{“title”:”师帅”}})

2.Save()通过传入文档的方法来替换已有文档

 

db.collection.save(

   <document>,

   {

     writeConcern: <document>

   })

document : 文档数据。

writeConcern :可选,抛出异常的级别。

>db.col.save({

     "_id" :ObjectId("5aabc1e988c1dbd7ac3f05e6"),

    "title" : "MongoDB",

是一个 Nosql 数据库",

    "by" : "Runoob",

    "url" : "http://www.runoob.com",

    "tags" : [

            "mongodb",

            "NoSQL"

    ],

    "likes" : 110})

只更新第一条记录:

db.col.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } );

全部更新:

db.col.update( { "count" : { $gt : 3 } } , { $set : { "test2" : "OK"} },false,true );

只添加第一条:

db.col.update( { "count" : { $gt : 4 } } , { $set : { "test5" : "OK"} },true,false );

全部添加加进去:

db.col.update( { "count" : { $gt : 5 } } , { $set : { "test5" : "OK"} },true,true );

全部更新:

db.col.update( { "count" : { $gt : 15 } } , { $inc : { "count" : 1} },false,true );

只更新第一条记录:

db.col.update( { "count" : { $gt : 10 } } , { $inc : { "count" : 1} },false,false );

更新单个文档

 db.test_collection.updateOne({"name":"abc"},{$set:{"age":"28"}}){ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }

 

db.test_collection.find()

更新多个文档

db.test_collection.updateMany({"age":{$gt:"10"}},{$set:{"status":"xyz"}}){ "acknowledged" : true, "matchedCount" : 3, "modifiedCount" : 3 }

5. 删除文档的方法

remove() 方法已经过时了,现在官方推荐使用 deleteOne() 和 deleteMany() 方法。

删除所有文档

db.DBName.deleteMany({})

删除

db.DBName.deleteMany({ status : "A" })

删除

db.DBName.deleteOne( { status: "D" } )