gpt4 book ai didi

mysql - 在 ActiveRecord 中高效地批量更新?

转载 作者:可可西里 更新时间:2023-11-01 07:03:39 26 4
gpt4 key购买 nike

如何高效地批量更新 ActiveRecord 中的记录?我正在尝试填充一个依赖于另一列的列。

现在这是我的代码:

Tweet.find_in_batches do |group|
to_be_saved = []
group.each do |t|
t.creation_date_posix = DateTime.strptime(t.creation_date_str, '%m/%d/%Y %H:%M').to_time.to_i
to_be_saved << t
end
Tweet.transaction do
to_be_saved.each{|t| t.save}
end
end

但是并没有提高效率。显然 transaction 不是正确的方法。有什么想法吗?

最佳答案

一般来说,您可以使用 update_all 将它们全部合并为一个,而不是将批量更新分散到 n 个 sql 写入语句中. (取决于很多变量)这可以提高您的整体表现。

关于mysql - 在 ActiveRecord 中高效地批量更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13299114/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com