mongoDB学习

1.基本概念

  • 数据库(database)

  • 集合(collection)

  • 文档(document)
    在MongoDB中,数据库和集合都不需要手动创建
    当我们创建文档时,如果文档所在的集合或数据库不存在会自动创建数据库和集合。


    ### 2.基本指令
  • mongod 启动mongodb

  • mongo 连接mongodb

  • show dbs

  • show databases 显示当前的所有数据库

  • use databaseName 进入指定数据库中,若无创建数据库

  • db 当前所处的数据库

  • show collections 显示数据库中所有的集合


3.CRUD


3-1.文档查询


db.collection.find()
-find()用来查询集合中所有符合条件的文档
-find()可以接受一个对象作为条件参数
{}表示查询集合中所有的文档
{属性:值} 查询属性是指定值的文档

db.collection.findOne()
-用来查询集合中符合条件的第一个文档
- findOne()返回的是一个文档对象

db.collection.find({}).count()
- 查询所有结果的数量

example
db.stus.find({_id:"hello"});
db.stus.find({age:16,name:"111"});
db.stus.find({age:22});
db.stus.findOne({age:20});
db.stus.find({}).count();
3-2.插入文档

db.collection.insert()
-向集合中插入一个或多个文档
-当我们向集合中插入文档时,如果没有给文档指定_id属性,择数据库会自动为文档添加_id,该属性会作为文档的唯一标识

db.collection.insertOne()
-添加一个文档对象

db.collection.insertMany()
-插入多个文档对象
Example
db.stus.insert({name:"demo1",age:10,gender:"male"});
db.stus.insert([
{name:"demo2",age:20,gender:"female"},
{name:"demo3",age:20,gender:"female"},
{name:"demo4",age:20,gender:"female"}
]);
db.stus.insert({_id:"hello",name:"demo6",age:20,gender:"male"});
db.stus.find();

3-3.修改文档


db.collection.update(查询条件,新对象)
- update()默认情况下回使用新对象来替换旧的对象
- 如果需要修改制定的属性,而不是替换需要使用“修改操作符”来完成修改
$set 可以用来修改文档中的的指定属性
$unset 可以用来删除文档的指定属性
- update()默认只会修改一个

db.collection.updateMany()
- 同时修改多个符合条件的文档
db.collection.updateOne()
-修改一个符合条件的文档
db.collection.replaceOne()
- 替换一个文档

Example


db.stus.find({});

db.stus.update({name:"demo1"},{age:20});
db.stus.update( {"_id":ObjectId("............")}, { $set:{ gender:"male", address:"beijing" } } )
db.stus.update( {"_id":ObjectId("............")}, { $unset:{ address:"beijing" } } )
db.stus.updateMany( {"name":"demo"}, { $set:{ gender:"male", address:"beijing" } } )
db.stus.update( {"_id":ObjectId("............")}, { $set:{ gender:"male", address:"beijing" } }, { multi:true } )
db.stus.find()

3-4.删除文档


db.collection.remove()
- 删除一个或多个,可以第二个参数传递一个true,择只会删除一个
- 如果传递一个空对象最为参数,则会删除所有的
db.collection.deleteOne()
db.collection.deleteMany()
db.collection.drop() 删除集合
db.dropDatebase() 删除数据库

Example


db.stus.insert([
{
name:"111", isDel:0 }, {name:"222", isDel:0 }]);
db.stus.updateOne({name:"111"},{$set:{isDel:1}})
db.stus.delete({name:"222"})
db.stus.find({isDel:0
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值