為什麼我的 MongoDB 查詢在浮點數轉換中總返回 0?如何修復?


對於浮點數轉換,在 MongoDB 中使用 parseFloat()。讓我們建立一個包含文件的集合 -

> db.demo523.insertOne({"details":{values:"-0.45"}});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e89b7efb3fbf26334ef611f")
}

使用 find() 方法顯示集合中的所有文件 -

> db.demo523.find();

這將生成以下輸出 -

{ "_id" : ObjectId("5e89b7efb3fbf26334ef611f"), "details" : { "values" : "-0.45" } }

以下是執行浮點數轉換不會生成 0 的查詢 -

>db.getCollection('demo523').find({}).forEach( function(d)
... { d.details.values = parseFloat( d.details.values )
... db.getCollection('demo523').save(d)} );

使用 find() 方法顯示集合中的所有文件 -

> db.demo523.find();

這將生成以下輸出 -

{ "_id" : ObjectId("5e89b7efb3fbf26334ef611f"), "details" : { "values" : -0.45 } }

更新於:2020 年 5 月 13 日

107 次瀏覽

開啟您的 職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.