yyz notes yyz notes
首页
  • RBAC权限设计
  • 架构图标设计
  • 账号体系
  • python基础
  • python高级
  • python模块
  • python设计模式
  • python数据结构与算法
  • django
  • django-DRF
  • flask
  • 直接设计开源pip包
  • 直接设计开源项目
  • python示例题/脚本
  • python面试题
  • golang基础
  • golang高级
  • golang常用组件
  • gin框架
  • es6
  • javascript
  • react
  • vue
  • TypeScript
  • mysql
  • redis
  • minio
  • elasticsearch
  • mongodb
  • 消息队列
  • 自动化测试
  • 操作系统

    • linux
    • windows
  • nginx
  • docker
  • k8s
  • git
  • ldap
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

益章

可乐鸡翅
首页
  • RBAC权限设计
  • 架构图标设计
  • 账号体系
  • python基础
  • python高级
  • python模块
  • python设计模式
  • python数据结构与算法
  • django
  • django-DRF
  • flask
  • 直接设计开源pip包
  • 直接设计开源项目
  • python示例题/脚本
  • python面试题
  • golang基础
  • golang高级
  • golang常用组件
  • gin框架
  • es6
  • javascript
  • react
  • vue
  • TypeScript
  • mysql
  • redis
  • minio
  • elasticsearch
  • mongodb
  • 消息队列
  • 自动化测试
  • 操作系统

    • linux
    • windows
  • nginx
  • docker
  • k8s
  • git
  • ldap
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • MySQL

  • Redis

  • Elasticsearch

  • MongoDB

    • MongoDB基础
    • Centos7安装MongoDB
    • MongoDB数据类型
      • 01.MongoDB数据类型
        • 1.1 MongoDB支持以下数据类型
        • 1.2 MongoDB常用类型
      • 02.测试
        • 2.1 创建测试数据
        • 2.2 查询测试
    • 基本增删改查
    • 复合查询
    • 聚合操作
  • 消息队列

  • 数据存储
  • MongoDB
YiZhang-You
2023-05-01
目录

MongoDB数据类型

# 01.MongoDB数据类型

# 1.1 MongoDB支持以下数据类型

  • String(字符串): mongodb中的字符串是UTF-8有效的。

  • Integer(整数): 存储数值。整数可以是32位或64位,具体取决于您的服务器。

  • Boolean(布尔): 存储布尔(true/false)值。

  • Double(双精度): 存储浮点值。

  • Min/ Max keys(最小/最大键): 将值与最低和最高BSON元素进行比较。

  • Arrays(数组): 将数组或列表或多个值存储到一个键中。

  • Timestamp(时间戳): 存储时间戳。

  • Object(对象): 嵌入式文档。

  • Null (空值): 存储Null值。

  • Symbol(符号): 与字符串相同,用于具有特定符号类型的语言。

  • Date(日期): 以UNIX时间格式存储当前日期或时间。

  • Object ID(对象ID) : 存储文档ID。

  • Binary data(二进制数据): 存储二进制数据。

  • Code(代码): 将JavaScript代码存储到文档中。

  • Regular expression(正则表达式): 存储正则表达式

# 1.2 MongoDB常用类型

  • 1、日期类型:date

    • 使用不同方式来创建一个date
    • Date():表示当前时间,插入的是一个字符串类型
    • new Date():插入的是isodate类型,表示的是格林威治标准时间
    • ISODate(): 类似new Date()
  • 2、ObjectId

    • 当插入数据的时候,自动生成一个字段: _id ---> 相当于主键
    • ObjectId是一个12字节的BSON类型的字符串
  • 3、表示数字的时候,注意的问题

    • NumberInt: 表示32位整数
    • NumberDecimal:支持34位小数
    • Double:如果没有指定数字类型默认是double

# 02.测试

# 2.1 创建测试数据

db.test2.insertOne({ "_id" : 1, "val" : NumberDecimal( "9.99" ), "description" : "Decimal" })
db.test2.insertOne({ "_id" : 2, "val" : 9.99, "description" : "Double" })
db.test2.insertOne({ "_id" : 3, "val" : 10, "description" : "Double" })
db.test2.insertOne({ "_id" : 4, "val" : NumberLong(10), "description" : "Long" })
db.test2.insertOne({ "_id" : 5, "val" : NumberDecimal( "10.0" ), "description" : "Decimal" })
1
2
3
4
5

# 2.2 查询测试

# 1、查询表中所有数据
>  db.test2.find()

# 2、数字不指定数据类型时默认是double类型,所以只能查到一条
>  db.test2.find({"val":9.99})
{ "_id" : 2, "val" : 9.99, "description" : "Double" }

# 3、类型为NumberDecimal,值为9.99的数据
>  db.test2.find({"val":NumberDecimal("9.99")})
{ "_id" : 1, "val" : NumberDecimal("9.99"), "description" : "Decimal" }

# 4、对于整数10的匹配,将匹配所有的数据类型是10
>  db.test2.find({"val":10})
{ "_id" : 3, "val" : 10, "description" : "Double" }
{ "_id" : 4, "val" : NumberLong(10), "description" : "Long" }
{ "_id" : 5, "val" : NumberDecimal("10.0"), "description" : "Decimal" }

# 5、对于整数10的匹配,将匹配所有的数据类型是10
>  db.test2.find({"val":NumberDecimal("10")})
{ "_id" : 3, "val" : 10, "description" : "Double" }
{ "_id" : 4, "val" : NumberLong(10), "description" : "Long" }
{ "_id" : 5, "val" : NumberDecimal("10.0"), "description" : "Decimal" }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
编辑 (opens new window)
上次更新: 2023/05/17, 23:08:21
Centos7安装MongoDB
基本增删改查

← Centos7安装MongoDB 基本增删改查→

最近更新
01
配置yun源
05-24
02
linux-配置python虚拟环境
05-24
03
linux文件目录管理
05-24
更多文章>
Theme by Vdoing | Copyright © 2023-2023 yizhang | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式