MongoDB常用數(shù)據(jù)類型分享
JSON
JSON是一種簡單的數(shù)據(jù)表示方式,它易于理解、易于解析、易于記憶。但從另一方面來說,因?yàn)橹挥衝ull、布爾、數(shù)字、字符串、數(shù)組和對象這幾種數(shù)據(jù)類型,所以JSON有一定局限性。例如,JSON沒有日期類型,JSON只有一種數(shù)字類型,無法區(qū)分浮點(diǎn)數(shù)和整數(shù),更別說區(qū)分32為和64位數(shù)字了。再者,JSON無法表示其他一些通用類型,如正則表達(dá)式或函數(shù)。
BSON
BSON(Binary Serialized Document Format)是一種類JSON的二進(jìn)制形式的存儲格式,簡稱Binary JSON。它和JSON一樣,支持內(nèi)嵌的文檔對象和數(shù)組對象,但是BSON有JSON沒有的一些數(shù)據(jù)類型,如Date和BinData類型。它支持下面數(shù)據(jù)類型。每個(gè)數(shù)據(jù)類型對應(yīng)一個(gè)數(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 你們就知道有個(gè)Int就行了,一般我們用Int32)
- Double:浮點(diǎn)數(shù) (沒有float類型,所有小數(shù)都是Double)
- Arrays:數(shù)組或者列表,多個(gè)值存儲到一個(gè)鍵 (list哦,大Python中的List哦)
- Object:如果你學(xué)過Python的話,那么這個(gè)概念特別好理解,就是Python中的字典,這個(gè)數(shù)據(jù)類型就是字典
- Null:空數(shù)據(jù)類型 , 一個(gè)特殊的概念,None Null
- Timestamp:時(shí)間戳
- Date:存儲當(dāng)前日期或時(shí)間unix時(shí)間格式 (我們一般不用這個(gè)Date類型,時(shí)間戳可以秒殺一切時(shí)間類型)*
ObjectID
文檔自動生成的_id,長度為24個(gè)字符。
0-8字節(jié)是時(shí)間戳,
9-14字節(jié)的機(jī)器標(biāo)識符,表示MongoDB實(shí)例所在機(jī)器的不同;
15-18字節(jié)的進(jìn)程id,表示相同機(jī)器的不同MongoDB進(jìn)程。
19-24字節(jié)是計(jì)數(shù)器
String
UTF-8字符串,記住是UTF-8字符串。
Integer
整數(shù) (Int32 Int64 我們就知道有個(gè)Int就行了,一般我們用Int32)
Double
浮點(diǎn)數(shù) (MongoDB中沒有float類型,所有小數(shù)都是Double)
Boolean
true或者false,首字母為小寫
Array
數(shù)據(jù)或者列表,多個(gè)值存儲到一個(gè)鍵
Object
類似于Python里的字典,key是唯一的
null
空值
Timestamp
時(shí)間戳
Date
默認(rèn)時(shí)間為標(biāo)準(zhǔn)時(shí)間(UTC)
需要轉(zhuǎn)換為當(dāng)前時(shí)間。
很少使用這個(gè)Date類型,因?yàn)闀r(shí)間戳可以秒殺一切時(shí)間類型。
到此這篇關(guān)于MongoDB常用數(shù)據(jù)類型分享的文章就介紹到這了,更多相關(guān)MongoDB數(shù)據(jù)類型內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。