MongoDB常用數(shù)據(jù)類型分享
JSON
JSON是一種簡單的數(shù)據(jù)表示方式,它易于理解、易于解析、易于記憶。但從另一方面來說,因為只有null、布爾、數(shù)字、字符串、數(shù)組和對象這幾種數(shù)據(jù)類型,所以JSON有一定局限性。例如,JSON沒有日期類型,JSON只有一種數(shù)字類型,無法區(qū)分浮點數(shù)和整數(shù),更別說區(qū)分32為和64位數(shù)字了。再者,JSON無法表示其他一些通用類型,如正則表達式或函數(shù)。
BSON
BSON(Binary Serialized Document Format)是一種類JSON的二進制形式的存儲格式,簡稱Binary JSON。它和JSON一樣,支持內(nèi)嵌的文檔對象和數(shù)組對象,但是BSON有JSON沒有的一些數(shù)據(jù)類型,如Date和BinData類型。它支持下面數(shù)據(jù)類型。每個數(shù)據(jù)類型對應(yīng)一個數(shù)字,在MongoDB中可以使用$type操作符查看相應(yīng)的文檔的BSON類型。
MongoDB 4.2官方支持?jǐn)?shù)據(jù)類型如下:
最經(jīng)常使用的數(shù)據(jù)類型:
- Object ID :Documents 自生成的 id
- String: 字符串,必須是utf-8
- Boolean:布爾值,true 或者false (這里有坑哦~在我們大Python中 True False 首字母大寫)
- Integer:整數(shù) (Int32 Int64 你們就知道有個Int就行了,一般我們用Int32)
- Double:浮點數(shù) (沒有float類型,所有小數(shù)都是Double)
- Arrays:數(shù)組或者列表,多個值存儲到一個鍵 (list哦,大Python中的List哦)
- Object:如果你學(xué)過Python的話,那么這個概念特別好理解,就是Python中的字典,這個數(shù)據(jù)類型就是字典
- Null:空數(shù)據(jù)類型 , 一個特殊的概念,None Null
- Timestamp:時間戳
- Date:存儲當(dāng)前日期或時間unix時間格式 (我們一般不用這個Date類型,時間戳可以秒殺一切時間類型)*
Object ID
文檔自動生成的_id,長度為24個字符。
0-8字節(jié)是時間戳,
9-14字節(jié)的機器標(biāo)識符,表示MongoDB實例所在機器的不同;
15-18字節(jié)的進程id,表示相同機器的不同MongoDB進程。
19-24字節(jié)是計數(shù)器
String
UTF-8字符串,記住是UTF-8字符串。
Integer
整數(shù) (Int32 Int64 我們就知道有個Int就行了,一般我們用Int32)
Double
浮點數(shù) (MongoDB中沒有float類型,所有小數(shù)都是Double)
Boolean
true或者false,首字母為小寫
Array
數(shù)據(jù)或者列表,多個值存儲到一個鍵
Object
類似于Python里的字典,key是唯一的
null
空值
Timestamp
時間戳
Date
默認(rèn)時間為標(biāo)準(zhǔn)時間(UTC)
需要轉(zhuǎn)換為當(dāng)前時間。
很少使用這個Date類型,因為時間戳可以秒殺一切時間類型。
到此這篇關(guān)于MongoDB常用數(shù)據(jù)類型分享的文章就介紹到這了,更多相關(guān)MongoDB數(shù)據(jù)類型內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Ubuntu系統(tǒng)中安裝MongoDB及其啟動命令mongod的教程
這篇文章主要介紹了Ubuntu系統(tǒng)中安裝MongoDB及其啟動命令mongod的教程,包括設(shè)置MongoDB開機啟動的腳本示例,非常推薦,需要的朋友可以參考下2016-01-01mongodb 修改器($inc/$set/$unset/$push/$pop/upsert)
對于文檔的更新除替換外,針對某個或多個文檔只需要部分更新可使用原子的更新修改器,能夠高效的進行文檔更新。更新修改器是中特殊的鍵2017-04-04mongodb主從復(fù)制_動力節(jié)點Java學(xué)院整理
這篇文章主要為大家詳細(xì)介紹了mongodb主從復(fù)制的相關(guān)資料,討論mongodb的部署技術(shù),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08mongodb使用docker搭建replicaSet集群與變更監(jiān)聽(最新推薦)
replicaSet和cluster從部署難度相比,replicaSet要簡單許多。如果所存儲的數(shù)據(jù)量規(guī)模不算太大的情況下,那么使用replicaSet方式部署mongodb是一個不錯的選擇,這篇文章主要介紹了mongodb使用docker搭建replicaSet集群與變更監(jiān)聽,需要的朋友可以參考下2023-03-03