展开
拓展 关闭
订阅号推广码
GitHub
视频
公告栏 关闭

MongoDB入门

  • 简介
MongoDB存储的是文档(document),文档内存储的是类似json的结构;mongodb的数据库中存储的是bson
mongodb中包含多个数据库,一个数据库包含多个集合,一个集合包含多个文档

show dbs              # 显示当前所有数据库
show databases              # 显示当前所有数据库
use 数据库名              # 进入到指定的数据库中;如果数据库不存在,也可切换到指定数据库,之后在数据库中执行插入操作,数据库就存在了
db               # 表示我们当前所处的数据库
show collections                    # 显示我们数据库中所有的集合
db.stus.insert ( {name:“小红”,age:18,gender:”男“} )                # 向stus集合中插入文档,即一个学生对象
db.stus.find()                 # 查询集合stus中的所有文档
  • 插入数据
db.集合名.insert({name:"小欢",age:28,gender:"男"})             # 插入单条数据
# 当我们插入一条数据后,mongodb会为该条数据指定一个唯一的 _id,也可自己指定 _id
db.集合名.insert({ _id:"abc", name:"小明", age:"15"})
db.集合名.insert([{},{}])              # 插入多条数据
db.集合名.insertOne()              # 只能插入单挑数据
db.集合名.insertMany([{} ])            # 可插入多条数据,即使只插入一条数据,也需用中括号
  • 查询数据
db.集合名.find()                    # 表示查询集合中所有文档
db.集合名.find({})                 # 表示查询集合中所有文档
db.集合名.find({age:"18"})                 # 查询集合中所有满足条件的文档
db.集合名.findOne({age:"18"})          # 查询集合中满足条件的第一个文档 
db.集合名.find({age:"18"})[2]             # find()方法返回的是一个数组,这里表示查询数组中的第二个文档
db.集合名.findOne({age:"16"}).name            # findOne()方法返回的是一个对象,这里表示查询第一个文档的name字段
db.集合名.find({}).count()              # 统计数量 
  • 修改数据
db.集合名.update(查询条件,新对象)              # 查询出的对象会被新对象替换
db.stus.update({name:"小花"}, {age:17})        # 将stus集合中name为小花的对象替换成新对象{age:17}

db.stus.update(
    {age:""16},                   # 查找age为16的对象,当查询到多个对象时,update()方法默认只会修改第一文档
    {
        $set:{
            name:"小刚",              # 只替换name字段
            gender:"男"                          # 该字段原对象中不存在时,则表示在新对象中新增字段
        }
    }
)

db.stus.update(
    {age:""16},                   # 查找age为16的对象
    {
        $unset:{               # $unset表示删除指定字段
            name:"小刚",            
        }
    }
)

db.集合名.updateOne()               # 只修改第一个文档
db.集合名.updateMany()             # 修改所有文档

db.集合名.update(
    {name:"小花"},         # 查询条件
    {
        $set:{
            address:"重庆"             # 修改后的条件
        }
    },
    {
        multi:ture           # 表示修改多个文档
    }
)
  • 删除数据
db.集合名.remove({name:"小花"})            # 删除集合中所有符合条件的文档
db.集合名.remove({name:"小花"}, true)       # 删除集合中符合条件的第一个文档
db.集合名.remove({})            # 传一个空对象作为参数,则删除集合中所有文档
db.集合名.drop()            # 删除集合
db.集合名.deleteOne()            # 删除单个文档
db.集合名.deleteMany()         # 删除多个文档
db.dropDatabase()         # 删除数据库
posted @ 2022-07-25 15:51  DogLeftover  阅读(12)  评论(0编辑  收藏  举报