我想按照以下更新我的文件
user1:{
emails:['email1', 'email2']
}
需要
user1:{
emails:[{email:'email1', is_active:1}, {email:'email2', is_active:1}]
}
我们可以在程序中使用循环创建函数,但我想通过编写查询
来完成此操作答案 0 :(得分:0)
(您的示例文档不是非常有效的JSON,所以我做了一些假设)
我创建了一个文档(在 stackoverflow 的存储桶中包含 user1 键),如下所示:
{
"emails": ["email1", "email2"]
}
然后,我使用UPDATE
语法(documented here)运行了ARRAY
:
UPDATE `stackoverflow`
SET emails = ARRAY {"email": v, "is_active": 1} FOR v IN emails END;
结果文件是:
{
"emails": [
{
"email": "email1",
"is_active": 1
},
{
"email": "email2",
"is_active": 1
}
]
}
如果要多次运行,请务必小心。您可能希望暂时将结果放在“emails_new”等字段中,而不是覆盖“电子邮件”,直到它按您希望的方式工作。