【mongodb】mongodb的字段类型

目录

          • [1. 基本数据类型](#1. 基本数据类型)
            • [1.1 String](#1.1 String)
            • [1.2 Number](#1.2 Number)
            • [1.3 Boolean](#1.3 Boolean)
            • [1.4 Date](#1.4 Date)
            • [1.5 Null](#1.5 Null)
            • [1.6 ObjectId](#1.6 ObjectId)
            • [1.7 Array](#1.7 Array)
            • [1.8 Binary Data](#1.8 Binary Data)
            • [1.9 Object](#1.9 Object)
          • [2. 特殊数据类型](#2. 特殊数据类型)
            • [2.1 Regular Expression](#2.1 Regular Expression)
            • [2.2 JavaScript](#2.2 JavaScript)
            • [2.3 Symbol](#2.3 Symbol)
            • [2.4 Decimal128](#2.4 Decimal128)
            • [2.5 Timestamp](#2.5 Timestamp)
            • [2.6 MinKey/MaxKey](#2.6 MinKey/MaxKey)
            • [2.7 DBPointer](#2.7 DBPointer)
          • [3. 常用字段类型示例](#3. 常用字段类型示例)
          • [4. 注意事项](#4. 注意事项)
1. 基本数据类型
1.1 String
  • 1.描述:字符串类型,用于存储文本数据,支持 UTF-8 编码。
  • 2.示例:"name": "Alice"
1.2 Number
  • 1.Int32/Int64: 整数类型(32 位或 64 位)。"age": 30
  • 2.示例:Double: 双精度浮点数。"height": 1.75
1.3 Boolean
  • 1.布尔类型,用于存储 true 或 false。
  • 2.示例:"isStudent": true
1.4 Date
  • 1.描述:日期类型,用于存储日期和时间,存储为 UTC 时间。
  • 2.示例:"createdAt": ISODate("2023-10-01T00:00:00Z")
1.5 Null
  • 1.描述:空值类型,用于表示字段值为空或不存在。
  • 2.示例:"middleName": null
1.6 ObjectId
  • 1.描述:唯一标识符类型,MongoDB 默认的 _id 字段类型,用于唯一标识文档。
  • 2.示例:"_id": ObjectId("6523f1c7e8b8d4a5b3c1d2e3")
1.7 Array
  • 1.描述:数组类型,用于存储一组值,可以是任意数据类型的混合。
  • 2.示例:"tags": ["mongodb", "database", "nosql"]
1.8 Binary Data
  • 1.描述:二进制数据类型,用于存储二进制数据(如图片、文件等)。
  • 2.示例:"imageData": BinData(0, "base64data==")
1.9 Object
  • 1.描述:嵌套文档类型,用于存储嵌套的键值对(类似于 JSON 对象)。
  • 2.示例:"address": { "city": "New York", "zip": "10001" }
2. 特殊数据类型
2.1 Regular Expression
  • 1.描述:正则表达式类型,用于存储正则表达式模式。
  • 2.示例:"pattern": /ab*c/i
2.2 JavaScript
  • 1.描述:JavaScript 代码类型,用于存储 JavaScript 代码或函数。
  • 2.示例:"script": function() { return 1 + 1; }
2.3 Symbol
  • 1.描述:符号类型,用于存储唯一的符号值(通常用于特定语言环境)。
  • 2.示例:"status": Symbol("active")
2.4 Decimal128
  • 1.描述:高精度十进制数类型,用于存储需要高精度的十进制数值。
  • 2.示例:"price": Decimal128("19.99")
2.5 Timestamp
  • 1.描述:时间戳类型,用于存储内部时间戳(与 Date 类型不同)。
  • 2.示例:"timestamp": Timestamp(1696156800, 1)
2.6 MinKey/MaxKey
  • 1.描述:特殊键类型,用于比较操作,分别表示最小值和最大值。
  • 2.示例:"rank": MinKey 或 "rank": MaxKey
2.7 DBPointer
  • 1.描述:数据库指针类型,用于存储指向另一个集合中文档的引用(已不推荐使用)。
  • 2.示例:"ref": DBPointer("collectionName", ObjectId("..."))
3. 常用字段类型示例
复制代码
{
  "_id": ObjectId("6523f1c7e8b8d4a5b3c1d2e3"),
  "name": "Alice",
  "age": 30,
  "height": 1.75,
  "isStudent": true,
  "createdAt": ISODate("2023-10-01T00:00:00Z"),
  "middleName": null,
  "tags": ["mongodb", "database", "nosql"],
  "address": {
    "city": "New York",
    "zip": "10001"
  },
  "price": Decimal128("19.99"),
  "status": "active"
}
4. 注意事项
  • 1.灵活性:MongoDB 的文档结构是动态的,字段类型可以在不同文档中不同,甚至同一个文档中的字段类型也可以不同(虽然不推荐这样做)。
  • 2.类型检查:MongoDB 不会强制检查字段类型,但应用程序逻辑应确保数据的一致性。
  • 3.ObjectId:默认情况下,MongoDB 会为每个文档生成一个唯一的 _id 字段,类型为 ObjectId。
相关推荐
朴拙数科11 小时前
MongoDB Atlas与MongoDB连接MCP服务器的区别解析
服务器·数据库·mongodb
辰哥单片机设计12 小时前
PH传感器详解(STM32)
数据库·mongodb
AscendKing16 小时前
mongo客户端操作mongodb记录
数据库·mongodb
辰哥单片机设计1 天前
PTC加热片详解(STM32)
数据库·mongodb
快乐点吧1 天前
【MongoDB】windows安装、配置、启动
数据库·windows·mongodb
yangmf20401 天前
私有知识库 Coco AI 实战(二):摄入 MongoDB 数据
数据库·人工智能·mongodb·coco ai
键盘飞行员1 天前
使用 Node、Express 和 MongoDB 构建一个项目工程
数据库·mongodb·express
zru_96021 天前
MongoDB 入门使用教程
数据库·mongodb
wowocpp1 天前
MongoDB Ubuntu 安装
数据库·mongodb
百万蹄蹄向前冲1 天前
动图MangoDB 8.0.8从安装到使用
数据库·mongodb·豆包marscode