zoukankan      html  css  js  c++  java
  • Mongo中的数据类型

    一、null

      null用于表示空值或者不存在的字段

      {"X" : null}

    二、布尔型

      布尔类型有两个值true和false

      {"x" : true}

    三、数值

      {"x" : 3.14}

      {"x" : 3}

    四、字符串

      {"x" : "qiaoansheng"}

    五、日期类型

      {"x" : new Date()}

    六、正则表达式

      {"x" : /foobar/i}

    七、数组

      ("x" : ["a", "b", "c", "d"])

    八、内嵌文档

      {"x" : {"qiao" : "ansheng"}}

    九、对象id

      {"x" : ObjectId()}

    十、二进制数据

    十一、代码

      {"x" : function() { /* ... */ }}

    日期:

      在shell中创建日期对象的时候使用的是new Date() 返回的是一个日期类型的字符串 (2016/4/7 2:03:42)

    数组:

      数组是一组值,它既能作为有序对象(入列表、栈或队列),也能作为无序对象(入:数据集)来操作

      {"qiao" : ["an",  "sheng",  3,  4.12]}

      上面 "qiao" 的文档中, qiao 这个键的值是一个数组

      数组中可以包含不同数据类型的元素

    内嵌文档

    {

      "OldId" : 934326,
      "Catalogs" : [{
        "CatalogId" : "5591f46e049fbb3c241a2526",
        "ParentId" : "",
        "CatalogName" : "语法",
        "Depth" : 0
      }, {
        "CatalogId" : "561746121daa7e28881ed7ff",
        "ParentId" : "5591f46e049fbb3c241a2526",
        "CatalogName" : "句型",
        "Depth" : 1
      }],
      "Points" : []

    }

      内嵌文档,中可以这样存放数据,在关系数据库中,我们可以通过关系关联多张表来获取数据(比如说数据库中有两张表他们之间的关系是一对多的,那我就要通过这个一来获取这个多的数据,把它们放到一个list集合中)

         但是在mongo中,因为他是非关系型数据库,所以我们无法进行表关联

      所以我们就使用内嵌文档的方式,把 多的这个数据存入到一的某一个键内

      这样我们从mongo中读取这个数据的时候,会自动给我们反序列化,这个Model  其中Catalogs 这个变量对应的是一个List的一个集合,集合中的数据就是数据库中Catalogs 的值

      mongoNB的一点是,他还能在内嵌文档中,在嵌入文档,程序获取数据的时候,也能给反序列化出来,集合中嵌套集合

      但是有一点,mongo目前只能修改到第二级的集合,也就是最多只能修改Catalogs 下面的数据

      如果Catalogs 下面的数据中嵌套的还有集合,就不能直接更新了,只能把 Catalogs 重新构建这个数据,更新到数据库中

    _id和ObjectId

      ObjectId使用12字节的存储空间,是一个有24个十六进制数字组成的字符串,他是mongo的默认主键

  • 相关阅读:
    DNF(一.YUM已死,DNF代之)
    cmd中运行python文件,并带参数
    python中dict[key] 存在key,但是报错:KeyError
    回测指标计算
    python进行excel操作
    myquant平台搭建及使用
    远程连接mongodb时,27017端口连接不上的解决办法
    python---urllib模块
    python---socket模块
    状态模式
  • 原文地址:https://www.cnblogs.com/ansheng/p/5362529.html
Copyright © 2011-2022 走看看