首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在mongodb中更新列数据类型

在mongodb中更新列数据类型
EN

Stack Overflow用户
提问于 2018-06-10 02:32:08
回答 1查看 222关注 0票数 -3

我正在尝试更新mongodb dataset中列的数据类型,但即使在成功运行命令之后,预期的更改也不会反映在compass中。

查询:

代码语言:javascript
复制
db.EquityPrice.find().forEach(function(data) {
    db.EquityPrice.update({_id : doc._id}, {$set : {Trade_Date : new Date(doc.Trade_Date) }});
})

有没有人能帮我找出哪里出错了?

EN

回答 1

Stack Overflow用户

发布于 2018-06-10 02:53:01

函数db.EquityPrice.find().forEach(

(Data){ db.EquityPrice.update({_id : doc._id},{$set:{Trade_Date : new Date(doc.Trade_Date) } });})

在您的代码中,您可以找到集合EquityPriceforEach元素中的所有条目,并应用一个包含文档(data)的函数。

为每个文档调用的update函数需要一个查询参数作为第一个参数。在本例中,您传递了{_id: doc._id} -但是没有定义对象doc,因此是undefined。查询没有找到_idundefined的元素。

您希望更新传递的data对象,因此请将代码更改为:

代码语言:javascript
复制
db.EquityPrice.update({_id : data['_id']}, {$set : {Trade_Date : new Date(data['Trade_Date']) }});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50777377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档