我需要转换这样的字段:
{
"_id" : ObjectId("576fd6e87d33ed2f37a6d526"),
"phoneme" : "JH OY1 N Z"
}
Run Code Online (Sandbox Code Playgroud)
进入像这样的子串数组
{
"_id" : ObjectId("576fd6e87d33ed2f37a6d526"),
"phonemes" : [ "JH", "OY1", "N", "Z" ]
}
Run Code Online (Sandbox Code Playgroud)
有时会变成像这样的字符数组
{
"_id" : ObjectId("576fd6e87d33ed2f37a6d526"),
"phonemes" : ["J", "H", " ", "O", "Y", "1", " ", "N", " ", "Z"]
}
Run Code Online (Sandbox Code Playgroud)
我在这里发现了一些将字符串转换为数组的代码,但是对于我的目的来说有点太简单了,因为只创建了一个数组元素.
db.members.find().snapshot().forEach( function (x) {
x.photos = [{"uri": "/images/" + x.photos}];
db.members.save(x);
});
Run Code Online (Sandbox Code Playgroud)
我是否可以在mongo shell语句中使用整个javascript语言?
我有一组文档,其中"标签"字段从空格分隔的标签列表切换到单个标签的数组.我想将以前的空格分隔字段更新为所有数组,如新的传入数据.
我也遇到了$ type选择器的问题,因为它将类型操作应用于单个数组元素,即字符串.所以按类型过滤只会返回所有内容.
如何将每个看起来像第一个示例的文档转换为第二个示例的格式?
{
"_id" : ObjectId("12345"),
"tags" : "red blue green white"
}
{
"_id" : ObjectId("54321"),
"tags" : [
"red",
"orange",
"black"
]
}
Run Code Online (Sandbox Code Playgroud)