我们有一张桌子:
id____|_____name
1 | john
2 | jane
将一些字符串附加到name列的最佳方法是什么,从而产生
id___|___name
1 | john doe
2 | jane doe
额外的问题:当为此目的使用sql CONCAT时,它需要与检索数据相同的计算成本而不是保存它(table.find(1) - > .name = name +" doe&#34 ; - > .save),或(CONCAT如何工作?它首先读取字段而不是使用UPDATE或在不检索的情况下附加它吗?)?
修改
我发现了increment_counter
方法使得原子增量,原子串附加有任何类似的方法,我的意思是将它附加在一个事务中的方法。或者更新日志字段的最佳方法是什么?
答案 0 :(得分:1)
在postgres中
Model.update_all("name = name || doe")
在Mysql中
Model.update_all("name = concat(name, 'doe')")