我有一个用户模型,其中包含字段名称,年龄(以年为单位)和dob(即出生日期)。我想通过计算dob和Date.today之间的差异来更新所有用户的年龄。我希望它在一个查询中完成,而不是更新每个用户。
我尝试使用的代码是:
User.update_all("age = ?", Date.today - :dob); #not working
我该如何解决?我正在使用Active Record。
----- UPDATE
经过多次尝试后,我设法完成它,因为它纯粹的mysql查询。如何通过ORM完成?
User.update_all("age = floor(datediff(curdate(), dob) / 365.25);")