美文网首页Node.jsNode.js专题
mongo Shell 使用笔记,增删改查

mongo Shell 使用笔记,增删改查

作者: 梁同桌 | 来源:发表于2017-03-26 13:46 被阅读75次

    Mac安装mongo地址:http://www.cnblogs.com/junqilian/p/4109580.html

    启动mongo,开一个终端输入:
    mongod --config /usr/local/etc/mongod.conf
    mongod.conf:内容如下

    systemLog:
      destination: file
      path: /usr/local/var/log/mongodb/mongo.log
      logAppend: true
    storage:
      dbPath: /usr/local/var/mongodb
    net:
      bindIp: 127.0.0.1
    

    再开一个终端输入:

    cd /usr/local/bin //进入数据库目录
    ./mongo //连结数据数据库
    show dbs //列出数据库
    use school //切换到school数据库,如果没有此数据库则创建此数据库
    

    增加

    // 创建一个student集合,并且插入一个数据。
    db.student.insert({"age":20, "name":"xiaoming", "sex":"man", "score":{"yuwen":100, "shuxue":70}});
    

    查询

    //查询 当前集合
    show collections
    //查询:student
    db.student.find()
    //查询:年龄12
    db.student.find({"age":12})
    //查询:数学 70
    db.student.find({"score.shuxue":70})
    //查询:数学大于60分
    db.student.find({"score.shuxue":{$gt:60}})
    //查询:有数学成绩这个字段
    db.student.find({"score.shuxue":{$exists:true}})
    //查询:数学成绩为70并且语文为100
    db.student.find({"score.shuxue":70,"score.yuwen":100})
    //查询:语文100或者语文90
    db.student.find({$or:[{"score.yuwen":100},{"score.yuwen":90}]})
    //查询:name中包含'e'的数据
     db.student.find({name:/e/});
    //:查询以a打头的数据
    db.student.find({name:/^a/});
    
    //查询:一个
    db.student.findOne();
    
    # 排序 sort  1:升序(小的在上)  -1:降序(大的在上)
    
    //查询后排序:语文成绩降序,如果语文成绩相等则年龄生序
    db.student.find().sort({"score.yuwen":-1,"age":1})
    
    # limit和skip
    
    //查询:限制返回一个结果
    db.student.find().limit(1)
    // 查询:跳过一条数据
    db.student.find().skip(1);
    

    修改

    //完整替换,student 修改成 age:10
    db.student.update({"score.shuxue":70},{"age":10})
    //查询数学分数为70的一个人:年龄修改为10.
    db.student.update({"score.shuxue":70},{$set:{"age":10}})
    //查询所有 数学分数为70:年龄修改为10.
    db.student.update({"score.shuxue":70},{$set:{"age":10}},{multi : true})
    //查询小红,修改当前lastModified为当前时间
    db.student.update({ "name" : "xiaohong" },{$currentDate: { "lastModified": true } })
    

    删除

    //删除:文档,没有确认,慎用
    db.student.dropDatabase()
    //删除:全部名字为xiaohong
    db.student.remove({"name":"xiaohong"});
    //删除:一个名字为xiaohong
    db.student.remove({"name":"xiaohong",{justOne:true}});
    

    如有错误,请指出,
    后面会总结:索引与聚合

    官方文档:https://docs.mongodb.com/getting-started/shell/
    个人博客: http://www.liangtongzhuo.com

    相关文章

      网友评论

        本文标题: mongo Shell 使用笔记,增删改查

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