MongoDB

作者: AAA年华 | 来源:发表于2017-12-21 21:50 被阅读0次

    MongoDB基本语法——数据库操作

          db:查看当前指向的数据库

          show dbs:查看当前所有的数据库

          use <数据库名称>:指向一个数据库

          Use数据库不会创建数据库,如果操作数据会自动创建数据库

    测试代码:

    db.dropDatabase():删除当前指向的数据库

    注意:慎用,要先db看一下在哪个数据库下,有些数据库不能这样删除,其他数据库可能会受影响的。

    测试代码:

    MongoDB基本语法——集合操作

    show collections:查看当前数据库所有集合

    db.createCollection([, options]):创建一个集合

    db.<集合名称>.drop():删除指定的集合

    测试代码1:查看当前数据库所有集合

    测试代码2:创建一个集合

    测试代码3:db.<集合名称>.drop():删除指定的集合

    MongoDB基本语法——数据类型

         ObjectID:文档id

         String:字符串

         Boolean:布尔值

         Integer:整数

         Double:浮点数

         Arrays:数组或者列表

         Object:嵌入的文档

         Null:空值

         Timestamp:时间戳

          Date:日期时间

    MongoDB基础语法——增加数据

         语法:db.<集合名称>.insert(文档)

         集合可以是原来存在的,可以是不存在的

         文档:就是JSON格式【python中的dict】表示的数据(dict)

         简单查询:db.<集合名称>.find() 查询指定集合的数据

    测试代码1:insert()

    测试代码2:insertOne()只能插入一条数据

    测试代码3:insertMany()可以插入一条或者多条数据。

    MongoDB基础语法——更新数据

          语法:db.<集合名称>.update(  条件(替换的),替换过后的内容 ,[multi:])

          指定属性更新:$opration

          multi:默认false更新符合条件第一条,设置true全集合更新

    测试代码1:不指定内容相当于替换里面的全部内容。

    测试代码2:$set使用    指定属性更新

      情况1: $set如果这个指定的属性不存在,那么就是在原来的基础上添加上这个属性。

                       不存在~添加

      情况2: $set如果这个指定的属性存在,那么就是指修改这个属性。   存在~修改

    测试代码3:当条件中有两个或多个满足条件的时候,update默认替换一个。不会

                        替换全部满足条件的。因为multi默认值为false。

    测试代码4:multi默认值为false,为ture的时候表示全部符合条件的全部更新

                      注意:必须要配合   指定属性更新:$set使用。   

    MongoDB基础语法——保存数据

    语法:db.<集合名称>.save(文档)

    特征:[_id]如果数据不存在~添加,如果数据存在~修改

    注意:save是通过id来修改的,其他的不行。

    MongoDB基础语法——删除数据

    语法:db.<集合名称>.remove(<query>, {justOne:<boolean>})

    参数query:删除文档的条件

    参数justOne:设置为true或者1,删除一条;默认false删除多条

    测试代码1:参数justOne:默认false删除多条

    测试代码2:参数justOne:设置为true或者1,删除一条

    MongoDB基础语法——查询数据

    1、基本查询:

           find([{文档条件}]):全集合查询

           findOne([{文档条件}]):查询第一个

           pretty():将查询结果格式化展示

    2、比较运算符(关系运算符)

    默认判断,无运算符

    $lt:little~小于 <  less than

    $lte:little or equals~小于等于 <=

    $gt:granter~大于 >

    $gte:granter or equals~大于等于 >=

    代码1:

    3、逻辑运算符

    逻辑与:并且运算,默认操作,无运算符

    逻辑或:或者运算,$or

    逻辑否:not

    4、范围运算符

    $in:判断指定条件是否包含在某个范围内

    $nin:判断指定条件是否不包含在某个范围内

    5、正则条件

    /reg/:普通正则表达式

    $regex:指定正则表达式

    6、自定义条件

    $where:通过函数自定义条件[JS函数]

    指定函数中,返回boolean类型的值

    this表示每个要查询的文档

    eg:db.student.find({$where:function() {return this.gender == “男” }})

    7、数据查询——限制查询条数

    <find>.limit(count)

    8、数据查询——跳过记录行数

    <find>.skip(num)

    注意:<find>.skip(num1).limit(num2),跳过记录行数后,再限制查询条数

    9、数据查询——投影:查询指定的域

    find({}, {投影字段:1/0})

    10、数据查询——排序

    <find>sort({字段:1/-1, ...})

    1.表示升序排列 -1表示降序排列,可以指定多个字段

    11、数据查询——统计

    <find>count()

    <find({条件})>.count()

    db.<集合名称>.count({条件})

    两种操作方式

    1.查询结果,通过count()统计数据

    2. 通过count()直接添加条件统计数据

    12、数据查询——去重

    db.<集合名称>.distinct(“去重域名称”, {条件})

    eg:查询数据列表中,所有的年龄分布情况   db.student.distinct(“age”, {})

    相关文章

      网友评论

        本文标题:MongoDB

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