如何根据旧值更新rethinkdb文档中的字段

时间:2016-05-02 03:13:32

标签: rethinkdb

我在数据库中有以下文档:

{
"email":  "abc1234" ,
"id":  "0ff9115c-44a8-4a9e-a2c1-f6f5d2ac5219" ,
"name":  "awesome dude" ,
}

上面有多个文件。

我想在电子邮件字段中添加一个字符串,比如@stackoverflow.com。也就是说,在更新之后,上面应该变成:

{
"email":  "abc1234@stackoverflow.com" ,
"id":  "0ff9115c-44a8-4a9e-a2c1-f6f5d2ac5219" ,
"name":  "awesome dude" ,
}

我如何在rethinkdb中执行此操作?我尝试了以下数据资源管理器:

r.db("monopolyApp").table("users").update({
  email2: r.row("email") + "@stackoverflow.com"
})

但是,这会将每个电子邮件地址更改为:

"r.row("email")@stackoverflow.com"

谢谢。

1 个答案:

答案 0 :(得分:2)

您正在寻找的是.add command

只需将您的查询修改为:

r.db("monopolyApp").table("users").update({
  email2: r.row("email").add("@stackoverflow.com")
})

你应该被设定!