如何根据旧值更新 rethinkdb 文档中的字段
Posted
技术标签:
【中文标题】如何根据旧值更新 rethinkdb 文档中的字段【英文标题】:How to update a field in rethinkdb documents based on its old value 【发布时间】:2016-05-02 03:13:32 【问题描述】:我在数据库中有如下文件:
"email": "abc1234" ,
"id": "0ff9115c-44a8-4a9e-a2c1-f6f5d2ac5219" ,
"name": "awesome dude" ,
上面的表格有多个文档。
我想在电子邮件字段中添加一个字符串,例如@***.com
。也就是说,更新后上面应该变成:
"email": "abc1234@***.com" ,
"id": "0ff9115c-44a8-4a9e-a2c1-f6f5d2ac5219" ,
"name": "awesome dude" ,
如何在 rethinkdb 中执行此操作?我尝试了以下数据浏览器:
r.db("monopolyApp").table("users").update(
email2: r.row("email") + "@***.com"
)
但是,这会将每个电子邮件地址更改为:
"r.row("email")@***.com"
谢谢。
【问题讨论】:
【参考方案1】:您正在寻找的是.add
command。
只需将您的查询修改为:
r.db("monopolyApp").table("users").update(
email2: r.row("email").add("@***.com")
)
你应该准备好了!
【讨论】:
谢谢!那行得通。我认为add()
仅用于数值过程。以上是关于如何根据旧值更新 rethinkdb 文档中的字段的主要内容,如果未能解决你的问题,请参考以下文章
rethinkdb - hasFields 查找具有多个多个缺失条件的所有文档
RethinkDB:获取在任何字段中包含字符串的所有文档
MongoDb:如何根据每个字段的值更新多个文档中的字段值?