【mongodb】mongodb的字段類型

目錄

          • 1. 基本數據類型
            • 1.1 String
            • 1.2 Number
            • 1.3 Boolean
            • 1.4 Date
            • 1.5 Null
            • 1.6 ObjectId
            • 1.7 Array
            • 1.8 Binary Data
            • 1.9 Object
          • 2. 特殊數據類型
            • 2.1 Regular Expression
            • 2.2 JavaScript
            • 2.3 Symbol
            • 2.4 Decimal128
            • 2.5 Timestamp
            • 2.6 MinKey/MaxKey
            • 2.7 DBPointer
          • 3. 常用字段類型示例
          • 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。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/74724.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/74724.shtml
英文地址,請注明出處:http://en.pswp.cn/web/74724.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MySQL篇(五)MySQL主從同步原理深度剖析

MySQL篇(五)MySQL主從同步原理深度剖析 MySQL篇(五)MySQL主從同步原理深度剖析一、引言二、MySQL主從同步基礎概念主庫(Master)從庫(Slave)二進制日志(Binary Log&#x…

論文學習16:Learning Transferable Visual Models From Natural Language Supervision

代碼來源 Learning Transferable Visual Models From Natural Language Supervisionhttps://arxiv.org/pdf/2103.00020 模塊作用 當前最先進的計算機視覺系統被訓練用于預測一組固定的、預先定義的目標類別。這種受限的監督方式限制了它們的通用性和可用性,因為要…

[MySQL初階]MySQL(9)事務機制

標題:[MySQL初階]MySQL(9)事物機制 水墨不寫bug 文章目錄 一、認識事務1、多線程訪問數據庫出現的問題2、對CURD的限制是通過事務機制實現的3、事務的四個屬性4、哪些引擎支持事務 二、事務的提交與autocommit設置三、事務的隔離性和隔離級別…

spring-cloud-alibaba-nacos-config使用說明

一、核心功能與定位 Spring Cloud Alibaba Nacos Config 是 Spring Cloud Alibaba 生態中的核心組件之一,專為微服務架構提供動態配置管理能力。它通過整合 Nacos 的配置中心功能,替代傳統的 Spring Cloud Config,提供更高效的配置集中化管理…

SonarQube數據庫配置

SonarQube部署完成后,在瀏覽器地址欄輸入http://IP:9000可以進入登錄頁面,以本機運行為例,地址為http://127.0.0.1:9000/,默認登錄名:admin,登錄密碼也是admin。登錄后會要求設置密碼: 按要求設…

醫藥檔案區塊鏈系統

1. 醫生用戶模塊?? ??目標用戶??:醫護人員 ??核心功能??: ??檢索檔案??:通過關鍵詞或篩選條件快速定位患者健康檔案。??請求授權??:向個人用戶發起檔案訪問權限申請,需經對方確認。??查看檔案?…

CSS3學習教程,從入門到精通, 化妝品網站 HTML5 + CSS3 完整項目(26)

化妝品網站 HTML5 CSS3 完整項目 下面是一個完整的化妝品網站項目,包含主頁、登錄頁面和注冊頁面。我將按照您的要求提供詳細的代碼和注釋。 1. 網站規劃與需求分析 需求分析 展示化妝品產品信息提供用戶注冊和登錄功能響應式設計,適配不同設備美觀…

ROS2 多機時間同步(Chrony配置簡明指南)

適用場景: 主機運行 ROS2 Humble(發布 /scan 等),板子運行 ROS2 Foxy(發布 /tf 等),兩邊通過 ROS_DOMAIN_ID 跨平臺通訊。需要保證系統時間對齊,避免 TF 插值失敗、建圖抖動等問題。…

Nginx配置偽靜態,URL重寫

Nginx配置偽靜態,URL重寫 [ Nginx ] 在Nginx低版本中,是不支持PATHINFO的,但是可以通過在Nginx.conf中配置轉發規則實現: location / { // …..省略部分代碼if (!-e $request_filename) {rewrite ^(.*)$ /index.php?s/$1 l…

電路筆記(元器件):ADC LTC系列模數轉換器的輸出范圍+滿量程和偏移調整

LTC1740(LTC1740官方文檔)是Analog Devices(原Linear Technology)公司生產的一款高性能、低功耗的14位模數轉換器(ADC)。它通常用于需要高精度和快速采樣率的應用中,如通信系統、數據采集設備等。同類產品 LTC1746:一款14位、40Ms…

續-算法-數學知識

3、歐拉函數 1、定義: 1~n 中與 n 互質的數的個數 例如:6 的有 1 2 3 4 5 6 其中,與 n 互質 的 數的個數為 2個分別是:1、5 2、計算: $ N p_1^{a1} p_2^{a2} p_3^{a3} … p_k^{ak} $(例如&#x…

C/C++測試框架googletest使用示例

文章目錄 文檔編譯安裝示例參考文章 文檔 https://github.com/google/googletest https://google.github.io/googletest/ 編譯安裝 googletest是cmake項目,可以用cmake指令編譯 cmake -B build && cmake --build build將編譯產物lib和include 兩個文件夾…

LintCode第974題-求矩陣各節點的最短路徑(以0為標準)

描述 給定一個由0和1組成的矩陣,求每個單元格最近的0的距離。 兩個相鄰細胞之間的距離是1。 給定矩陣的元素數不超過10,000。 在給定的矩陣中至少有一個0。 單元格在四個方向上相鄰:上,下,左和右。 樣例 例1: 輸入: [[0,0,0],[0,0,0],[0…

Redis核心機制-緩存、分布式鎖

目錄 緩存 緩存更新策略 定期生成 實時生成 緩存問題 緩存預熱(Cache preheating) 緩存穿透(Cache penetration) 緩存雪崩(Cache avalanche) 緩存擊穿(Cache breakdown) 分…

CF每日5題(1300-1500)

最近急速補練藍橋杯中,疏于cf練習。 感覺自己過題還是太慢了。 今日水題,我水水水水。 1- 1979C lcm 水 1400 第 i i i局贏了,1個硬幣頂 k [ i ] k[i] k[i]個貢獻,所以每局分硬幣 x i 1 k [ i ] x_i{1\over k[i]} xi?k[i]1?個…

從代碼學習深度學習 - LSTM PyTorch版

文章目錄 前言一、數據加載與預處理1.1 代碼實現1.2 功能解析二、LSTM介紹2.1 LSTM原理2.2 模型定義代碼解析三、訓練與預測3.1 訓練邏輯代碼解析3.2 可視化工具功能解析功能結果總結前言 深度學習中的循環神經網絡(RNN)及其變種長短期記憶網絡(LSTM)在處理序列數據(如文…

easy-poi 一對多導出

1. 需求: 某一列上下兩行單元格A,B值一樣且這兩個單元格, 前面所有列對應單元格值一樣的話, 就對A,B 兩個單元格進行縱向合并單元格 1. 核心思路: 先對數據集的國家,省份,城市...... id 身份證進行排序…

AI比人腦更強,因為被植入思維模型【42】思維投影思維模型

giszz的理解:本質和外在。我們的行為舉止,都是我們的內心的表現。從外邊可以看內心,從內心可以判斷外在。曾國藩有7個識人的方法,大部分的人在他的面前如同沒穿衣服一樣。對于我們自身的啟迪,我認為有四點&…

Spring Boot 打印日志

1.通過slf4j包中的logger對象打印日志 Spring Boot內置了日志框架slf4j,在程序中調用slf4j來輸出日志 通過創建logger對象打印日志,Logger 對象是屬于 org.slf4j 包下的不要導錯包。 2.日志級別 日志級別從高到低依次為: FATAL:致命信息,表…

【IOS webview】源代碼映射錯誤,頁面卡住不動

報錯場景 safari頁面報源代碼映射錯誤,頁面卡住不動。 機型:IOS13 技術棧:react 其他IOS也會報錯,但不影響頁面顯示。 debug webpack配置不要GENERATE_SOURCEMAP。 解決方法: GENERATE_SOURCEMAPfalse react-app…