Mongodb 利用mongoshell進(jìn)行數(shù)據(jù)類(lèi)型轉(zhuǎn)換的實(shí)現(xiàn)方法
$type操作符
檢測(cè)類(lèi)型
種類(lèi) 代號(hào) 別名
Double 1 “double”
String 2 “string”
Object 3 “object”
Array 4 “array”
Binary data 5 “binData”
Undefined 6 “undefined” Deprecated.
ObjectId 7 “objectId”
Boolean 8 “bool”
Date 9 “date”
Null 10 “null”
Regular Expression 11 “regex”
DBPointer 12 “dbPointer”
JavaScript 13 “javascript”
Symbol 14 “symbol”
JavaScript (with scope) 15 “javascriptWithScope”
32-bit integer 16 “int”
Timestamp 17 “timestamp”
64-bit integer 18 “l(fā)ong”
Min key -1 “minKey”
Max key 127 “maxKey
db.article.find({data:{$type:2}) //尋找data字段為string的文檔
forEach函數(shù)
對(duì)查詢(xún)結(jié)果集合中每個(gè)文檔使用js函數(shù)
cursor.forEach(function) Iterates the cursor to apply a JavaScript function to each document from the cursor.
使用例子
將data.tagList數(shù)組中的string轉(zhuǎn)換為int32,x代表迭代傳入的文檔
db.article.find({"data.tagList.0":{$type:2}}).forEach(function(x){ var i=0; var length=x.data.tagList.length; for(i=0;i<length;i++ ){ if(typeof x.data.tagList[i] === 'string') { x.data.tagList[i]=NumberInt(x.data.tagList[i]); } }; db.article.save(x)})
note
1.使用js新特性要注意,比如我的是不支持for(var a of b)的,還有注意string是小寫(xiě)啊
2.可以使用print輸出
db.users.find().forEach( function(myDoc) { print( "user: " + myDoc.name ); } );
以上這篇Mongodb 利用mongoshell進(jìn)行數(shù)據(jù)類(lèi)型轉(zhuǎn)換就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
利用golang驅(qū)動(dòng)操作MongoDB數(shù)據(jù)庫(kù)的步驟
這篇文章主要給大家介紹了關(guān)于如何利用golang驅(qū)動(dòng)操作MongoDB數(shù)據(jù)庫(kù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11MongoDB模糊查詢(xún)操作案例詳解(類(lèi)關(guān)系型數(shù)據(jù)庫(kù)的 like 和 not like)
這篇文章主要介紹了MongoDB的模糊查詢(xún)操作(類(lèi)關(guān)系型數(shù)據(jù)庫(kù)的 like 和 not like) ,本文通過(guò)代碼案例分析給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,,需要的朋友可以參考下2019-07-07MongoDB 復(fù)制(副本集)學(xué)習(xí)筆記
這篇文章主要介紹了MongoDB 復(fù)制(副本集),結(jié)合實(shí)例形式分析了MongoDB數(shù)據(jù)庫(kù)復(fù)制的相關(guān)原理、配置、使用方法及操作注意事項(xiàng),需要的朋友可以參考下2019-10-10MongoDb CPU利用率過(guò)高問(wèn)題如何解決
這篇文章主要介紹了MongoDb CPU利用率過(guò)高問(wèn)題如何解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09windows安裝mongodb6.x并設(shè)置用戶(hù)名密碼的詳細(xì)過(guò)程
這篇文章主要介紹了windows安裝mongodb6.x并設(shè)置用戶(hù)名密碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04- Mongo最大的特點(diǎn)是他支持的查詢(xún)語(yǔ)言非常強(qiáng)大,其語(yǔ)法有點(diǎn)類(lèi)似于面向?qū)ο蟮牟樵?xún)語(yǔ)言,幾乎可以實(shí)現(xiàn)類(lèi)似關(guān)系數(shù)據(jù)庫(kù)單表查詢(xún)的絕大部分功能,而且還支持對(duì)數(shù)據(jù)建立索引。Mongo還可以解決海量數(shù)據(jù)的查詢(xún)效率,當(dāng)數(shù)據(jù)量達(dá)到50GB以上時(shí),Mongo數(shù)據(jù)庫(kù)訪問(wèn)速度是MySQL10 倍以上2015-05-05
MongoDB運(yùn)行狀態(tài)監(jiān)控、性能分析工具mongostat詳解
這篇文章主要介紹了MongoDB運(yùn)行狀態(tài)監(jiān)控、性能分析工具mongostat詳解,mongostat是mongdb自帶的狀態(tài)檢測(cè)工具,在命令行下使用,它會(huì)間隔固定時(shí)間獲取mongodb的當(dāng)前運(yùn)行狀態(tài),并輸出,本文詳細(xì)講解了它的使用,需要的朋友可以參考下2015-07-07Mongo復(fù)制集同步驗(yàn)證的實(shí)例詳解
這篇文章主要介紹了mongo復(fù)制集同步驗(yàn)證的實(shí)例詳解的相關(guān)資料,這里提供實(shí)現(xiàn)的方法及示例代碼,幫助大家學(xué)習(xí)理解,需要的朋友可以參考下2017-07-07