Mongodb_基本操作UCRD

网站
    Mongodb官网:www.mongodb.org
        安装包下载  使用文档

    Mongodb国内官方网站:www.mongoing.com
    

数据库概念
    有组织的存放数据
    按照不同的需求进行查询

数据库的分类
    Sql    数据库:支持Sql语言的数据库
        Oracle Mysql
    NoSql数据库:不支持Sql语言的数据库

为什么是Mongodb
    无数据结构限制
        没有表结构的概念 每条记录可以有完全不同的结构
        业务开发方便快捷
        sql数据库需要事先定义表结构再使用
    完全的索引支持
        单键 多键索引
        数组索引
        全文索引
        地理位置索引
    方便的冗余和扩展
        复制集保证数据安全
        分片扩展数据规模
    良好的支持
        完善的文档
        齐全的驱动支持
use imooc 使用imooc数据库
db.createCollection("imooc") 创建一个数据库

删除数据库    
use accounts
db.dropDatabase()// 删除数据库 accounts

show dbs 展示数据库

删除集合
use accounts
coll = db.getCollection("accounts");
coll.drop();





db.集合名.方法

_id 可以自己传也可以不写 不能重复

插入一条数据    
     db.imooc_collection.insert({x:1})
     for(var i = 0; i < 100; i++)db.imooc_collection.insert({x:i})
查询    默认查询所有
    db.imooc_collection.find()
    查询x:1
    db.imooc_collection.find({x:1})
    查询总条数
    db.imooc_collection.find().count();
    可以跳过n条 限制查询结果为m条 按照x排序
    db.imooc_collection.skip(n).limit(m).sort({x:1});
更新
    db.imooc_collection.update({x:1}, {x:999});
    db.imooc_collection.update({x:1, y:1, z:1}, {x:999}) //会将对象替换掉 只剩下x:999
    db.imooc_collection.update({x:1, y:1, z:1}, {$set: {x:999}}); //单独更新
更新不存在数据
    当{y:100} 这条数据不存在的时候 以下命令 不会做出更新
    db.imooc_collection.update({y:100}, {$set: {y:999}})
    如果想在{y:100} 存在的情况下 更新数据 不存在的时候 创建数据
    db.imooc_collection.update({y:100}, {$set:{y:999}}, true)

更新数据
    for(var i =0; i < 3; i++)db.imooc_collection.insert({x:1});
    db.imooc_collection.find({x:1}) //三条数据
    db.imooc_collection.update({x:1}, {$set: {x:2}}, fasle)
        //false代表不存在不对数据进行操作 true不存在创建一条数据
        //以上结果只 更新了第一条数据的x:1-->x:2 应该执行以下操作
    db.imooc_collection.upadte({x:1}, {$set: {x:2}}, false, true) //把所有的x:1的数据都变成x:2 

删除操作  需要传递参数 参数不能为空
    db.imooc_collection.remove() //报错
    db.imooc_collection.remove({x:1}) //默认删除所有的x:1的数据
原文地址:https://www.cnblogs.com/liuxiankun/p/8086758.html