MongoDB中的数据类型 | MongoDB常用数据类型

416 阅读3分钟

MongoDB中的数据类型|常见的MongoDB数据类型

Data Types In MongoDB: Common MongoDB Data Types

目录

MongoDB以其巨大的可扩展性、可用性和性能而闻名。MongoDB的数据类型使我们能够更有效地存储数据,同时执行非常高效和稳健的查询。以下是MongoDB中最常使用的一些数据类型。

1.字符串

最基本和最广泛使用的数据类型之一是字符串。为了表示文本,利用了字符串类型。因为BSON字符串是UTF-8,我们可以很容易地在其中表达大多数国际字符。

例子

{

"intern\_name":  "Edward Bill",

"intern\_skills":  "Software Development",

"intern\_salary":  7500,

"intern\_status":  true,

}

2.整数

数值是使用整数数据类型来存储的。根据服务器的不同,它可以存储32位或64位的数字。

例子

{

"intern\_name":  "Edward Bill",

"intern\_skills":  "Software Development",

"intern\_salary":  7500,

"intern\_status":  true,


}

Intern_salary的类型是整数,因为它存储的是一个数字。

3.双倍

含有8个字节(64位IEEE 754浮点)浮点的数值是使用double数据类型存储的。

下面是一个在字段Intern score中具有双倍值的文件的例子。

{

"intern\_name":  "Edward Bill",

"intern\_skills":  "Software Development",

"intern\_score":  87.75,

"intern\_status":  true,

}

4.布尔值

布尔值(真或假)是用布尔数据类型来存储的。在下面的例子中,字段intern status是布尔类型的,因为它存储的值是true。布尔型数据比整数或字符串占用的空间更少,而且可以避免不需要的比较副作用。

{

"intern\_name":  "Edward Bill",

"intern\_skills":  " Software Development",

"intern\_score":  87.75,

"intern\_status":  true,

}

5.数组

数组是使用数组数据类型存储的。我们可以用数组数据类型在文档的一个键中存储多个值。

{

" intern\_name":  "Edward Bill",

" intern\_skills":  \["Software Development", "C++", "Java"\],

" intern\_score":  87.75,

" intern\_status":  true,

}

6.对象

嵌入文档是一个放在另一个文档里面的键值对。嵌入文档使用对象数据类型进行存储。

{

"product\_code": "0000-XYZ",

"product\_price": 39.99,

"product\_dimensions": {

"product \_height": 1000,

"product\_width": 90,

"product\_depth": 600,

},

"product\_availability": true,

}

因为它有自己的键值对集合,上面例子中的产品尺寸字段是一个嵌入式文档。因此,这个字段是一个对象字段。

7.7.日期

当前的日期或时间被存储在 "Date "数据类型中。返回日期可以有多种方式,可以是字符串,也可以是日期对象。在这种情况下,有三种策略可以使用。

  1. Date()函数返回一个字符串。
  2. 用New Date()返回一个日期对象。
  3. ISODate()也会返回一个日期对象。

例子

{

"employee\_name": "John Doe",

"employee\_dob": ISODate("2004-04-10T12:45:42.389Z"),

"employee\_marks": 80.40

}

8.时间戳

术语 "时间戳 "是指一组用于描述发生日期和时间的字符。时间戳数据类型通常用于跟踪文件的创建、编辑和更新。此类字符被存储在时间戳数据类型中。要构造一个时间戳,请使用new Timestamp()。

例子

{

"product\_code": "0000-XYZ",

"product\_price": 39.99,

"product\_created": Timestamp(1531456567, 1),

"product\_availability": true,

}

9.空值

NULL数据类型是用来表示一个零或没有价值的值,正如其名称所暗示的。

当一个文档中的空值字段被查询时,它看起来是这样的。

{

"product\_code": "0000-XYZ",

"product\_price": 39.99,

"product\_color": null,

"product\_availability": true,

}

10.二进制

这种数据类型在字段中用来保存二进制数据。在关系型数据库管理系统中,这种数据类型对应于Blob类型。然而,基于MongoDB有16MB的报告大小限制,如果二进制数据和不同字段的完整大小低于16MB,那么二进制数据可以利用二进制数据类型植入文档内。

{

"\_id": "4567rttyygjuhutfv7890",

"product\_code": "1234-ABCD",

"product\_price": 49.99,

"product\_availability": true,

"product\_picture":BinData(1, "rk56tyvbu5677ghugf456..."),

}