美文网首页
mongodb基础语法教程

mongodb基础语法教程

作者: 潇豪 | 来源:发表于2019-07-22 17:09 被阅读0次

    基本概念


    数据库 (database)
    集合 (collection)
    文档 (document)

    集合和数据库都不需要手动创建,不存在会自动创建


    基本指令


    show dbs
    show databases
    

    显示当前数据库

    use test
    

    进入指定的数据库中

    db
    

    表示当前所在的数据库

    show collections
    

    显示所有的集合


    数据库的CURD


    插入db.collection.insert


    db.person.insert({name:"xiaohao",age:23,gender:"male"});
    

    插入数据,person为创建的集合名称

    db.person.find()
    

    查询插入的数据

    db.person.insert([
    {name:"xiaohao1",age:23,gender:"male"},
    {name:"xiaohao2",age:24,gender:"male"},
    {name:"xiaohao3",age:25,gender:"male"},
    ]) 
    

    插入多个数据,多个数据传数组
    如果没有给文档指定_id,系统会自动生成_id,确保唯一性,可以自己指定,指定后不自动添加,但是自己添加不确保唯一性,这里要注意一下。

    db.person.insertOne()
    

    插入一个

    db.person.insertMany()
    

    插入多个
    以上用insert()功能一样,只为语义更清晰,3.2版本后出现


    查询db.collection.find

    db.person.find()
    

    查询所有

    db.person.find({_id:"xxxx"})
    db.person.find({age:23})
    

    条件查询,find返回数组

    db.person.find({_id:"xxxx"})[0]
    

    [0]为数组索引,返回数组第一个

    db.person.find({age:23,name:"xiaohao"})
    

    多条件查询,同时满足两个条件

    db.person.findOne({{age:23}})
    db.person.findOne({age:23}).name
    

    findOne返回对象

    db.person.find({}).count()   or   db.person.find({}).length();
    

    查询条数使用count()比较多


    修改文档db.collection.update

    db.person.update({name:"xiaohao"},{age:27})
    

    先查询,再替换。但是这样会只存留age:27,推荐使用$符号。默认只改一个

    db.person.update({name:"xiaohao"},{$set:{name:"shawn",age:25}})
    

    推荐使用以上操作

    db.person.update({name:"xiaohao"},{$unset:{name:"shawn"}})
    db.person.updateOne({name:"xiaohao"},{$unset:{name:"shawn"}})
    

    删除指定属性,这里删除name属性,里面不写内容也可以

    db.person.updateMany({name:"xiaohao"},{$set:{name:"shawn",age:25}})
    db.person.updateMany({name:"xiaohao"},{$set:{name:"shawn",age:25}},{multi:true})
    

    修改多个。 综合上面可以发现update可以实现updateOne和updateMany


    删除

    db.collection.remove()
    db.collection.drop()
    db.collection.deleteOne()
    db.collection.deleteMany()

    db.person.remove({id:"xxx",true})
    

    默认删除符合条件的,选择true,删除一个

    db.person.remove({})
    

    为空清除所有,先遍历再删除性能差

    db.person.drop();
    

    如有需求使用删除,慎重使用

    db.dropDatabase()
    

    相关文章

      网友评论

          本文标题:mongodb基础语法教程

          本文链接:https://www.haomeiwen.com/subject/uaiwlctx.html