我在mongodb中有一个字段是字符串.{"field": "some text"}
,我想把它们都转换成array.{"field": ["some text"]}
我知道我可以循环浏览所有文档,获取字段,然后更新,但我想知道是否有更干净的方法.
谢谢
我在mongodb中有一个字段是字符串.{"field": "some text"}
,我想把它们都转换成array.{"field": ["some text"]}
我知道我可以循环浏览所有文档,获取字段,然后更新,但我想知道是否有更干净的方法.
谢谢
您可以在map/Reduce的Reduce函数中完成这项工作,以保持mongodb中的所有处理.基本上,您可以使用map/reduce将结果放入一个新集合,然后将它们复制回旧集合(或者删除旧集合并重命名新集合).这样做的好处是将所有内容都保存在mongo中.
Update:另一个 Select 可能是使用db.eval.db.eval
在服务器上执行,因此更新将在服务器上完成,而不会产生任何流量/延迟.
我认为唯一的另一个 Select 是如您所描述的那样——通过查询和更新每个选项在客户机上实现.