【发布时间】:2017-08-29 13:23:48
【问题描述】:
假设我的数据库中有一个用户模型,每个用户的身高和体重已经输入。现在我想在用户表中添加一个 BMI 列,该列是根据每个现有用户的体重和身高计算得出的。如果我有一百万用户,那么最有效的方法是什么?
附言
我尝试添加一个在调用时在本地运行脚本的 rails 路由,但发现它需要很长时间。我认为我不能使用 rails 控制台,因为它需要一个复杂的方法。
【问题讨论】:
-
您想要数据库中的实际列,只计算迁移数据,还是只想要模型上的只读属性?
-
@Ilya 绝对不是,这解释了如何批量运行更新,我想知道如何根据其他列的值创建列。
-
@Isaac,您可以创建一个列,然后批量更新所有值。
标签: ruby-on-rails database activerecord sqlite